Avatar ·

¿Cómo guardar una imagen desde una URL en PHP? La función no funciona con algunas imágenes

Hola a todos. Soy nuevo en PHP y me encontré con un problema al guardar imágenes desde URLs externas. Estoy escribiendo un parser simple para descargar avatares de usuarios. Tengo este código: ```php $url = 'https://example.com/avatar.jpg'; $image = file_get_contents($url); file_put_contents('avatars/user1.jpg', $image); ``` Con algunos sitios funciona, pero con otros no – devuelve un archivo vacío o un error. Probé diferentes enfoques: 1. Usé `copy($url, $local_path)` – tampoco siempre funciona. 2. Intenté con CURL, pero ahí hay aún más confusión. 3. Algunas imágenes se guardan corruptas (no se abren). Sospecho que el problema es que el servidor puede bloquear solicitudes directas o requiere encabezados User-Agent. También noté que si la URL contiene caracteres cirílicos o espacios, no funciona. Aquí hay un ejemplo de URL que no funciona: ``` https://site.com/фото/аватарка пользователя.jpg ``` Indíquenme cómo guardar imágenes en PHP de manera correcta y confiable.