PHP CURL descargar y subir imagen desde la URL
PHP CURL descargar y subir imagen desde la URL. PHP es el lenguaje de programación más usado en el mundo del internet, la gran mayoría de sistemas de gestión de contenidos (CMS por sus siglas en inglés) utilizan este lenguaje. Por lo tanto, posee gran cantidad de funciones para satisfacer la demanda de sus usuarios. Sin embargo, en este artículo abordaremos de la función cURL que es recomendable su uso en algunas tareas.
PHP CURL descargar y subir imagen desde la URL
El ejemplo que les traigo hoy, es acerca de un pequeño sistema que haciendo uso de un formulario en el cual nos pide la URL de una imagen puede sacar un duplicado de esa imagen y almacenarlo en nuestro servidor web en una carpeta previamente declarada.
Descripción de la función cURL
curl_setopt — Configura una opción para una transferencia cURL. Sin embargo, cabe resaltar que cURL soporta a partir de la versión 4.0.2 hacia adelante, la versión PHP 5 y la versión 7 del PHP.
¿Cuáles son los usos de cURL en los sistemas web?
- Búsquedas en google
- Podemos iniciar sesión en un sistema web:
- Cambiar nombre al navegador
- Incluir las cabeceras en el output, etc.
Contenido del ejemplo cURL
Fichero index.php
Este sistema solo consta de un archivo en cual será encargado de realizar toda la operación, veamos su contenido.
Creación de un formulario HTML
<form action="" method="post"> <div class="form-group"> <label for="usuario">Ingresar URL de la Imagen:</label> <input required type="text" class="form-control" id="direccion" name="direccion" placeholder="Ingrese direccion de imagen" value=""> </div> <input name="iniciar_descarga" class="btn btn-primary" type="submit" value="Iniciar Descarga"> </form>
Código PHP encargado de realizar el proceso
<?php // validamos el envio el formualrio para que se active la creacion del comprimido if(isset($_POST["iniciar_descarga"])){ // Variable con el metodo post envianda desde el Formulario $direccion=trim($_POST["direccion"]); $direccionweb = $direccion; $metodocurl = curl_init(); curl_setopt($metodocurl, CURLOPT_URL, $direccionweb); curl_setopt($metodocurl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($metodocurl, CURLOPT_SSLVERSION,3); $curlDatos = curl_exec ($metodocurl); curl_close ($metodocurl); // Declaramos la ruta para almacenar los archivos descargados $rutadescarga = "descarga/Mi-imagen.jpg"; $miarchivo = fopen($rutadescarga, "w+"); fputs($miarchivo, $curlDatos); fclose($miarchivo); } ?>
Visualizamos la imagen procesada por el formulario HTML
<?php if(isset($_POST["iniciar_descarga"])){ $directory="descarga"; $dirint = dir($directory); while (($archivo = $dirint->read()) !== false) { if (eregi("gif", $archivo) || eregi("jpg", $archivo) || eregi("png", $archivo)){ echo "<img src='".$directory."/".$archivo."' class='img-thumbnail'>"; } } $dirint->close(); } ?>
CONCLUSIÓN
Es muy recomendable el uso de los cURLs, es mejor que file_get_contents(), además de que es más veloz y más eficaz a la hora de procesar recursos. Por lo tanto, es más rápida ya que no tiene que procesar muchas líneas de código en nuestro sistema web.
Además, hay muchas formas para poder utilizarlo que detallare en otro artículo.