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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по PHP
Пред. След.

Глава 39. Работа с удаленными файлами

В случае, если опция allow_url_fopen включена в конфигурационном файле php.ini, вы можете использовать HTTP и FTP ссылки в большинстве функций, принимающих в качестве параметра имя файла. Также вы можете использовать ссылки в операторах include(), include_once(), require() и require_once(). Дополнительную информацию о поддерживаемых в PHP протоколах вы можете найти в Прил. M.

Замечание: В 4.0.3 и более ранних версиях при сборке необходимо использовать опцию --enable-url-fopen-wrapper для активации возможности работать с удаленными файлами.

Замечание: Дистрибутивы PHP для Windows-платформ до версии 4.3 не поддерживают возможности работы с удаленными файлами для следующих операторов: include(), include_once(), require(), require_once(), и функций вида imagecreatefromXXX (Ссылка LVII, Image Functions).

Например, вы можете использовать это для того, чтобы открыть файл на удаленном сервере, извлечь необходимые вам данные и использовать их в запросе к базе данных или же просто отобразить их в дизайне вашего сайта.

Пример 39-1. Получение заголовка удаленной страницы

<?php
$file
= fopen ("http://www.example.com/", "r");
if (!
$file) {
    echo
"<p>Unable to open remote file.\n";
    exit;
}
while (!
feof ($file)) {
    
$line = fgets ($file, 1024);
    
/* Сработает, только если заголовок и сопутствующие теги расположены в одной строке */
    
if (eregi ("<title>(.*)</title>", $line, $out)) {
        
$title = $out[1];
        break;
    }
}
fclose($file);
?>

Вы также можете работать с удаленными файлами, расположенными на FTP-сервере (подразумевается, что вы авторизировались с необходимыми для этого привилегиями). Таким образом вы можете создавать новые файлы, но попытка перезаписать существующий файл при помощи функции fopen() приведет к ошибке.

Для того, что бы авторизироваться под пользователем, отличным от 'anonymous', вам необходимо указать логин (и, возможно, пароль) в адресной строке, например так: 'ftp://user:password@ftp.example.com/path/to/file'. (Вы можете использовать этот же синтаксис для доступа к удаленным файлам по HTTP-протоколу, если необходима Basic-авторизация.)

Пример 39-2. Сохранение данных на удаленном сервере

<?php
$file
= fopen ("ftp://ftp.example.com/incoming/outputfile", "w");
if (!
$file) {
    echo
"<p>Unable to open remote file for writing.\n";
    exit;
}
/* Запись данных. */
fputs ($file, $_SERVER['HTTP_USER_AGENT'] . "\n");
fclose ($file);
?>

Замечание: Глядя на приведенный выше пример, у вас может возникнуть идея использовать эту технику для ведения удаленного лог-файла. К сожалению, это не реализуемо, поскольку попытка записи в уже существующий удаленный файл при помощи функции fopen() приведет к ошибке. В реализации распределенного логирования, возможно, вам поможет функция syslog().


Пред. Начало След.
Поддержка метода PUT Уровень выше Работа с соединениями


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





Copyright © 2005-2016 Project.Net.Ru