Usar PHP para cargar un archivo generado por una URL

Entonces, tengo un pequeño código PHP que usa Kaywa para generar y mostrar un código QR:

 echo "<img src='http://qrcode.kaywa.com/img.php?s=10&d=$qr_url' alt='QR code' />";

Pan comido. Pero por el bien de tener una copia de seguridad, me gustaría guardar esta imagen en mi servidor, tal vez en "myserver/qrbackups". Sé cómo hacer que PHP cargue un archivo desde un formulario, pero ¿puedo hacerlo desde una URL de imagen recuperada?

preguntado el 12 de junio de 12 a las 22:06

5 Respuestas

Vea file_get_contents.

$data = file_get_contents("http://qrcode.kaywa.com/img.php?s=10&d=$qr_url");
$saved = file_put_contents('/path/to/myserver/qrbackups/the-code.png', $data);

Ten en cuenta /path/to/myserver/qrbackups/the-code.png debe ser un nombre de archivo único para cada código QR individual.

Respondido el 12 de junio de 12 a las 22:06

Puede usar cURL para acceder mediante programación a las URL.

http://us3.php.net/manual/en/curl.examples-basic.php

Respondido el 12 de junio de 12 a las 22:06

Puede intentar usar curl o file_get_contents para extraer el archivo del servidor.

Por ejemplo: http://www.phpriot.com/articles/download-with-curl-and-php

Y después de obtener el archivo, simplemente muestre el que obtuvo de su servidor o control remoto.

Respondido el 12 de junio de 12 a las 22:06

copy('http://domain.com/path', '/tmp/file.jpeg');

debería funcionar para ti. Y, como otros te han señalado, cURL también funcionará.

Respondido el 12 de junio de 12 a las 22:06

Si tiene la extensión GD en su servidor, puede usar una biblioteca como Código QR PHP para eliminar la dependencia de Kaywa. El uso requiere solo una línea de código donde quiera generar un código QR.

Respondido el 13 de junio de 12 a las 00:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.