В настоящее время я нахожусь на mac, когда я использую клиент командной строки для подключения к ftp-серверу, он работает, и я вижу две папки Arkiv и Saxo, я вижу то же самое, если я иду в браузере.Почему я вижу эти различия между функциями php ftp и функциональностью ftp, найденными у других клиентов?
В drupal У меня есть крюк cron, где я использую функции php ftp. Я, конечно, используя те же имя пользователя, пароль, как в двух других случаях здесь приведен пример кода
if (@ftp_login($conn_id, $ftp_user_name, $ftp_user_pass)) {
$listing = ftp_rawlist($conn_id, ".");
watchdog('ftp root current directory', ftp_pwd($conn_id),array(), WATCHDOG_WARNING);
watchdog('ftp root directory listing', print_r($listing,true),array(), WATCHDOG_WARNING);
watchdog('ftp root try to change directory',$dir,array(), WATCHDOG_WARNING);
$filecount = 0;
if (ftp_chdir($conn_id, $dir)) {
$contents = ftp_rawlist($conn_id, ".");
watchdog('inside contents', print_r($contents,true), array(), WATCHDOG_WARNING);
watchdog('inside contents and current folder', ftp_pwd($conn_id), array(), WATCHDOG_WARNING);
...
}}
переменная $ реж установлено, что имя одного из этих папок я ожидал увидеть - в этом случае «Arkiv», и эта папка содержит несколько сотен файлов, когда я смотрю в командной строке или в браузере.
Сообщения, которые я получаю назад от этого процесса являются:
inside contents and current folder 09/09/2014 - 15:19 /Arkiv Anonymous (not verified)
inside contents 09/09/2014 - 15:19 Anonymous (not verified)
ftp root try to change directory 09/09/2014 - 15:18 Arkiv Anonymous (not verified)
ftp root directory listing 09/09/2014 - 15:18 Anonymous (not verified)
ftp root current directory 09/09/2014 - 15:18/ Anonymous (not verified)
Я, кажется, не быть в состоянии получить любую информацию назад, когда я пытаюсь получить список содержимого каталога. Я пробовал как rawlist, так и nlist, и ни один из них не возвращает мне никакого контента, как в корневой директории, где у меня должны быть два подкаталога Arkiv и Saxo, а также в самих подкаталогах, где есть несколько сотен файлов (подтверждено командой строка и браузер).
Кроме того, если выход из $ listing = ftp_rawlist ($ conn_id, "."); пусто, как это может быть, что, когда я
if (ftp_chdir($conn_id, $dir)) { .. }
, что она позволяет мне через и
ftp_pwd($conn_id)
говорит мне, что я нахожусь в папке «/ Arkiv»?