PHP Conference Fukuoka 2025

ftp_chdir

(PHP 4, PHP 5, PHP 7, PHP 8)

ftp_chdirModifica el directorio FTP actual

Descripción

ftp_chdir(FTP\Connection $ftp, string $directory): bool

ftp_chdir() modifica el directorio actual a directory.

Parámetros

ftp

Una instancia de FTP\Connection.

directory

El directorio destino.

Valores devueltos

Esta función retorna true en caso de éxito o false si ocurre un error. Si el cambio falla, PHP también generará una advertencia.

Historial de cambios

Versión Descripción
8.1.0 El parámetro ftp ahora espera una instancia de FTP\Connection ; anteriormente, se esperaba un resource.

Ejemplos

Ejemplo #1 Ejemplo con ftp_chdir()

<?php

// Configuración de una conexión básica
$ftp = ftp_connect($ftp_server)

// Autenticación con nombre de usuario y contraseña
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

// Verificación de la conexión
if ((!$ftp) || (!$login_result)) {
die(
"¡Fallo en la conexión FTP!");
}

echo
"Directorio actual: " . ftp_pwd($ftp) . "\n";

// Intento de cambiar al directorio "somedir"
if (ftp_chdir($ftp, "somedir")) {
echo
"El directorio actual es ahora: " . ftp_pwd($ftp) . "\n";
} else {
echo
"No se pudo cambiar de directorio\n";
}

// Cierre de la conexión
ftp_close($ftp);
?>

Ver también

  • ftp_cdup() - Cambia de directorio y pasa al directorio padre
  • ftp_pwd() - Devuelve el nombre del directorio actual

add a note

User Contributed Notes 2 notes

up
6
neil at 11 out of 10
17 years ago
Thanks to h3 at valleyfield dot netSame function with some minor changes and comments addedFTP function checks if a directory exists<?phpfunction ftp_is_dir( $dir ) {    global $ftpcon;    // get current directory    $original_directory = ftp_pwd( $ftpcon );    // test if you can change directory to $dir    // suppress errors in case $dir is not a file or not a directory    if ( @ftp_chdir( $ftpcon, $dir ) ) {        // If it is a directory, then change the directory back to the original directory        ftp_chdir( $ftpcon, $original_directory );        return true;    }     else {        return false;    }        } ?>
up
3
info at swiftyexpress dot com
16 years ago
Works like the other functions in this page's notes, but this one doesn't make use of a global FTP connection, so it takes parameters like the other functions in the extension

<?php
function ftp_directory_exists($ftp, $dir)
{
    // Get the current working directory
    $origin = ftp_pwd($ftp);
    
    // Attempt to change directory, suppress errors
    if (@ftp_chdir($ftp, $dir)) 
    {
        // If the directory exists, set back to origin
        ftp_chdir($ftp, $origin);    
        return true;
    }

    // Directory does not exist
    return false;
}
?>


[NOTE BY danbrown AT php DOT net: As the contributor mentions, the original function was noted here by (h3 AT valleyfield DOT net) on 13-JUL-2007.]
To Top