CascadiaPHP 2024

ftp_chdir

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

ftp_chdirИзменяет текущую директорию на FTP-сервере

Описание

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

Меняет текущую директорию на заданную аргументом.

Список параметров

ftp

Экземпляр класса FTP\Connection.

directory

Целевая директория.

Возвращаемые значения

Функция возвращает true в случае успешного выполнения или false, если возникла ошибка. Если изменение директории завершилось неудачей, PHP вызовет предупреждение.

Список изменений

Версия Описание
8.1.0 Параметр ftp теперь ожидает экземпляр класса FTP\Connection; раньше параметр ждал ресурс (resource).

Примеры

Пример #1 Пример использования ftp_chdir()

<?php

// установка соединения
$ftp = ftp_connect($ftp_server);

// вход с именем пользователя и паролем
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

// проверка соединения
if ((!$ftp) || (!$login_result)) {
die(
"Не удалось подключиться к FTP-серверу!");
}

echo
"Текущая директория: " . ftp_pwd($ftp) . "\n";

// пытаемся сменить текущую директорию на somedir
if (ftp_chdir($ftp, "somedir")) {
echo
"Новая текущая директория: " . ftp_pwd($ftp) . "\n";
} else {
echo
"Не удалось сменить директорию\n";
}

// закрытие соединения
ftp_close($ftp);
?>

Смотрите также

  • ftp_cdup() - Переходит в родительскую директорию
  • ftp_pwd() - Возвращает имя текущей директории

add a note

User Contributed Notes 2 notes

up
6
neil at 11 out of 10
16 years ago
Thanks to h3 at valleyfield dot net

Same function with some minor changes and comments added

FTP function checks if a directory exists

<?php
function 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
4
info at swiftyexpress dot com
15 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