Copiar o mover las imágenes de un servidor externo

En este artículo vamos a ver una función realizada con PHP que nos va a permitir copiar o mover las imágenes de un servidor ajeno o externo a nuestro servidor.

Esta función puede ser empleada en muchos caso pero, en uno muy práctico y donde me he visto en la necesidad de utilizarlo es al querer pasar todo el contenido de un Oscommerce a un Prestashop. Imáginate la situación, como lo harías sin pagar un servicio existente donde se encarguen de todo?

function captureImage($origin, $destination) { 
    $mi_curl = curl_init ($origin); 
    $fp_destination = fopen ($destination, "w"); 
    curl_setopt ($mi_curl, CURLOPT_FILE, $fp_destination); 
    curl_setopt ($mi_curl, CURLOPT_HEADER, 0); 
    curl_exec ($mi_curl); 
    curl_close ($mi_curl); 
    fclose ($fp_destination); 
}

La función recibe 2 parámetros de entrada: la url del archivo de origen y la url del archivo de destino. Su función es coger el archivo de origen y copiarlo a la url de destino.

En el caso que comentábamos antes, podemos crear un script recorriendo todos los productos de un Oscommerce para capturar de la base de datos la imagen asociada al producto y dentro de esta iteración llamar a esta función:

captureImage($url_img_osc, $url_destino_ps);

Como por ejemplo:

captureImage('http://www.domain_osc.com/images/'.$row['products_image'], $_SERVER['DOCUMENT_ROOT']."/shop/images/image.jpg");

 

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 4,00 de 5)
Cargando…

Comparte en las redes sociales

Escrito por Jose Aguilar - Experto programador Prestashop y Wordpress.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*