Cómo utilizar la función ftp en php para cargar archivos y soluciones para cargas de archivos fallidas
Esto implica que los hosts de Windows se carguen en hosts de Linux y los hosts de Linux que se carguen en hosts de Linux. Solo hay una diferencia entre los dos, porque la ruta de Windows es compatible con la ruta de Linux, pero la ruta de Linux no es compatible con el método de escritura "\\" del host de Windows. Así que tenga cuidado al escribir su camino.
A continuación, se enumera el código de implementación específico de PHP que utiliza la función ftp para cargar archivos en los dos casos anteriores.
1. Descripción de los parámetros de carga de imágenes por ftp.
$source: la ruta completa de la imagen local. (/a/b/c.jpg)
$des: la ruta completa al host Linux de destino de carga.
$ftp_server: dirección ftp
$ftp_user_name: nombre de usuario ftp
$ftp_user_pass: contraseña ftp
$port: puerto p>
p>
Dos formas de utilizar la función ftp para cargar archivos en PHP
Por ejemplo:
Dirección local: /a/b/c.jpg
Dirección de destino:/d/a/b/c.jpg
2.1 Cargue el host de Linux en el host de Linux.
función ftpSendFile($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
{
// Este paso es cargar Cuándo el directorio es inconsistente con el directorio local, use $des = "/d" .$des;
$conn_id = ftp_connect($ftp_server, $port) o die("No se pudo conectar a $ftp_server ");
$login_result = ftp_login($conn_id, $ ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, TRUE);
$ftp_folder = dirname($des);
$dir = explotar("/", $ftp_folder);
$path = "";
para ($i = 0; $i < count($dir); $i++) {
$ruta .= "/" .$dir[$i];
if (!ftp_chdir( $conn_id, $ruta)) {
$resultado = ftp_mkdir($conn_id, $ruta);
}
} p>
if (ftp_put($conn_id, $des, $source, FTP_BINARY)){
return 1;
} else {
return 0;
}
ftp_close($conn_id);
}
2. Cargue el host de Windows al host de Linux.
función sendPic($fuente,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$puerto)
{
$des = "/d" .$des;
$conn_id = ftp_connect($ftp_server, $port) o die("No se puede conectar a $ftp_server");
$login_result = ftp_login($conn_id, $ ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, TRUE);
$ftp_folder = dirname(str_ireplace('\\', '/', $des));
$dir = explotar("/", $ftp_folder);
$path = "";
for ($i = 0; $i < contar ($dir[$i++) {
$ruta .= "/" .$dir[$i]; ) {
$resultado = ftp_mkdir($conn_id, $ruta);
}
}
if (ftp_put($conn_id , str_ireplace('\', '/', $des), $source, FTP_BINARY)){
return 1;
} else {
return 0 ;
}
ftp_close($conn_id);
}
Los dos métodos anteriores para cargar archivos usando la función ftp en php Básicamente puede satisfacer las necesidades de uso normal.