Перейти к содержимому

ftp_mlsd()

Что такое ftp_mlsd()?

Функция ftp_mlsd() — это встроенная функция PHP, которая возвращает список файлов и каталогов указанного каталога на FTP-сервере в машиночитаемом формате. Функция принимает один параметр:

  1. ftp_stream: Идентификатор соединения, возвращаемый функцией ftp_connect().

Функция возвращает массив файлов и каталогов в указанном каталоге. Каждый элемент массива представлен в виде ассоциативного массива со следующими ключами: name, type, size, modify и perms.

Синтаксис ftp_mlsd()

Синтаксис функции ftp_mlsd() выглядит следующим образом:

Синтаксис ftp_mlsd()

php
array ftp_mlsd ( resource $ftp_stream [, string $directory ] )

Функция ftp_mlsd() принимает один обязательный параметр ftp_stream и один необязательный параметр directory. Параметр ftp_stream — это идентификатор соединения, возвращаемый функцией ftp_connect(). Параметр directory — это имя каталога для вывода списка. Если параметр directory опущен, выводится список текущего каталога.

Использование ftp_mlsd()

Чтобы использовать функцию ftp_mlsd(), сначала необходимо установить соединение с FTP-сервером с помощью функции ftp_connect(). Вот пример:

Использование ftp_mlsd()

php
<?php

// Set up an FTP connection
$conn = ftp_connect('ftp.example.com');

// Login with your FTP credentials
ftp_login($conn, 'username', 'password');

// Get the directory listing in a machine-readable format
$directory_listing = ftp_mlsd($conn, '/path/to/remote/directory');

// Close the FTP connection
ftp_close($conn);

В этом примере мы устанавливаем соединение с FTP-сервером с помощью функции ftp_connect(). Затем выполняем вход с использованием учётных данных FTP с помощью функции ftp_login(). Наконец, получаем список каталога в машиночитаемом формате с помощью функции ftp_mlsd() и закрываем FTP-соединение.

Обработка ошибок в ftp_mlsd()

Важно правильно обрабатывать ошибки при использовании функции ftp_mlsd(). Если функция возвращает false, это означает, что получение списка каталога не удалось. Вот пример обработки ошибок:

Обработка ошибок в ftp_mlsd()

php
<?php

$directory_listing = ftp_mlsd($conn, '/path/to/remote/directory');

if ($directory_listing === false) {
    echo "Failed to retrieve directory listing.\n";
} else {
    // Process the directory listing
}

В этом примере мы проверяем возвращаемое значение функции ftp_mlsd(). Если оно равно false, выводим сообщение об ошибке; в противном случае обрабатываем список каталога.

Заключение

Функция ftp_mlsd() — это полезная встроенная функция PHP, которая позволяет получать список каталога в машиночитаемом формате. Следуя рекомендациям и лучшим практикам, описанным в этой статье, вы сможете уверенно использовать функцию ftp_mlsd() в своих PHP-проектах. Надеемся, эта статья была для вас полезна.

Практика

Для чего используется команда FTP MLSD в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.