Ftp как определить размер файла

Обновлено: 07.07.2024

Мне нужен список всех файлов (и связанных с ними размеров файлов) на FTP-сервере. Я могу получить список файлов с помощью класса FTP CodeIgniter, но не знаю, как узнать размер файла. Как мне узнать размеры файлов? Спасибо.

Я ничего не знаю о FTP-классе CodeIgniter, но как насчет этого?

Я предполагаю, что метод list_files () класса FTP не предоставляет эту информацию. Это верно?

Просто бегло взглянул на FTP-класс CodeIgniters. Поскольку он написан с обратной совместимостью для PHP4, вы, вероятно, можете сделать это (взломать), если вам нужно.

Я бы не рекомендовал это - вероятно, стоит расширить основной класс ftp CI

Поместите это в свое приложение / библиотеки и сохраните как ftp.php. Если вы используете обновленную версию CI, она загрузит ваше расширение.

Поскольку CI по-прежнему совместим с PHP 4, вы, вероятно, сможете сделать это быстро и грязно следующим образом:

В $ files вы должны получить одну строку для каждого файла, содержащую права доступа к файлу, владельца / группу, размер файла и имя файла. Вам нужно будет проанализировать это, чтобы отобразить их отдельно.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: просто скопируйте / вставьте информацию о соединении из руководства CI, добавив последнюю строку на основе исходного кода CI, YMMV: p.

Относительно просто расширить класс CI FTP:

По сути, просто сделайте get_ftp_size () оберткой для:

Надеюсь, это поможет (если вы застряли, просто просмотрите файл ftp.php своей установки; скоро вы найдете свой путь)

Изменить

Поскольку wimvds справедливо полагает, что ftp_rawlist () может быть более предпочтительным / более простым вариантом, я могу даже пойти так далеко, что предлагаю изменить list_files () для использования ftp_rawlist ().

После тяжелой работы этот код отлично работает . и я хочу поделиться с сообществом (от MundialSYS)

Хороший код! Фернандо

По заданному файлу и пути возвращает имя, путь, размер и дату изменения. Второй параметр позволяет вам явно указать, какую информацию вы хотите вернуть; варианты: имя, server_path, размер, дата, читаемый, доступный для записи, исполняемый файл, fileperms. Возвращает FALSE, если файл не может быть найден.

Читайте также: