П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 176162 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 72970 раз(а).

Учебник HTML.
Просмотров 72689 раз(а).

Руководство по PHP5.
Просмотров 43449 раз(а).

Хостинг через призму DNS.
Просмотров 50007 раз(а).

Подборка текстов стандартных документов.
Просмотров 43680 раз(а).

Учебник PHP - Самоучитель
Просмотров 49996 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 50354 раз(а).

Внешние атаки...
Просмотров 40772 раз(а).

Учебник PHP.
Просмотров 35889 раз(а).

SSI в примерах.
Просмотров 26973 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь




Работа с FTP средствами PHP

Другие возможности при работе с FTP

ftp_cdup() 
ftp_mkdir() 
ftp_rmdir() 
ftp_pasv() 
ftp_chdir() 
ftp_nlist() 
ftp_size() 
ftp_delete() 
ftp_rename() 
ftp_site() 


Переход в родительский каталог

Изменение текущего рабочего каталога на родительский производится с помощью функции ftp_cdup:

Синтаксис:

  bool ftp_cdup(int ftp_connect);

Пример:

<?
  $host = "ftp.server.ru";
  $port = 21;
  $user = "anonymous";
  $passwrod = "password";
  $connect = ftp_connect($host, $port, 150);
  if(!$connect)
  {
    exit();  
  }
  $result = ftp_login($connect, $user, $password);
  if($result)
  {
    // сохраняем имя текущего рабочего каталога
    $current_dir = ftp_pwd($connect);
    // переходим в родительский каталог 
    ftp_cdup($connect);
    // сохраняем имя нового каталога
    $new_dir = ftp_pwd($connect);
  }
  else
  {
    ftp_quit($connect);
    exit();
  }
  // Закрываем соединение
  ftp_quit($connect);
?>

Изменение текущего рабочего каталога

Изменение текущего рабочего каталога на указанный осуществляется при помощи функции ftp_chdir:

<?
  $new_dir = "web";
  ftp_chdir($connect, $new_dir);
?>

Как видно из этого листинга, функция ftp_chdir имеет два параметра: дескриптор соединения $connect и имя нового каталога $new_dir.

Удаление файлов

Удалить файл с FTP-сервера можно с помощью функции ftp_delete:

Синтаксис:

  bool ftp_delete(int ftp_connect, string remote_file);

Здесь ftp_connect - дескриптор соединения, а remote_file - имя удаляемого файла.

Создание каталога

Новый каталог можно создать, используя функцию ftp_mkdir:

Синтаксис:

  string ftp_mkdir(int ftp_connect, string directory);

Эта функция возвращает имя созданного каталога или false в случае неудачи:

<?
  $dir = "web";
  $created_dir = ftp_mkdir($connect, $dir);
?>

Перечисление файлов в каталоге

Узнать, какие файлы находятся в текущем каталоге, можно применив функцию ftp_nlist:

Синтаксис:

  array ftp_nlist(int ftp_connect, string directory);

Пример:

<?
  $file_list = ftp_nlist($connect, ".");
  if(is_array($file_list))
  {
    foreach($file_list as $file)
    {
      echo("$file <br>");
    }
  }
?>

Переименование файлов

Переименовать файлы на FTP-сервере осуществляется с помощью функции ftp_rename:

Синтаксис:

  bool ftp_rename(int ftp_connect, string from, string to);

Удаление каталогов

Для удаления каталогов применяется функция ftp_rmdir:

Синтаксис:

   bool ftp_rmdir(int ftp_connect, string directory);

Определение размера файлов

Для определения размера файлов существует функция ftp_size:

Синтаксис:

  int ftp_size(int ftp_connect, string filepath);

В случае неудачи функция возвращает -1. К примеру:

<?
  $file = "/web/user/file.txt";
  $file_size = ftp_size($connect, $file);
  if ($file_size == -1)
  {
    echo("Размер файла не определен");
  }
  else
  {
    echo("Файл $file имеет размер $file_size байт");
  }
?>

Посылка команды на сервер

Послать на сервер команду можно с помощью функции ftp_site:

Синтаксис:

  bool ftp_site(int ftp_connect, string command);

Эта функция посылает на сервер команду SITE. Как правило, с помощью команд SITE выполняются такие команды операционной системы, как chmod. Список команд SITE, поддерживаемый сервером можно узнать, подключившись к нему и выполнив команду REMOTEHELP. Ниже приведен код, позволяющий изменить права доступа к файлу на удаленном сервере:

<?
  $command = "chmod 0766 /web/user/file.txt";
  ftp_site($connect, $command);
?>

Работа через брандмауэр

При работе с FTP-сервером через брандмауэр часто бывает необходимо изменить активный режим, при котором соединение инициируется сервером, на пассивный, при котором соединение инициируется клиентом. Это можно сделать, применив функцию ftp_pasv:

<?
  $pasv_flag = true;
  $pasv_result = $pasv_flag ? "enabled" : "disabled";
  ftp_pasv($connect, $pasv_flag);
?>

Назад | Содержание | Вперед



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru