Ftp как определить размер файла
Мне нужен список всех файлов (и связанных с ними размеров файлов) на 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, если файл не может быть найден.
Читайте также: