fopen(PHP 3, PHP 4) fopen - открывает файл или URL. Описаниеint fopen (string filename, string mode [, int use_include_path]) Если filename начинается с "http://" (нечувствительно к регистру), то HTTP 1.0 соединение открывается со специфицированным сервером, страница запрашивается методом HTTP GET и указатель файла возвращается в начало тела ответа. 'Host:'-header отправляется вместе с запросом, чтобы обработать виртуальные хосты на основе имён. Начиная с PHP 4.3.0, если вы скомпилировали поддержку OpenSSL, вы можете использовать "https://" для открытия HTTP-соединения через SSL. Обратите внимание, что указатель файла позволяет вам запрашивать только body\тело ответа; для запрашивания шапки/header HTTP-ответа вам нужно использовать PHP 4.0.5 или новее; эти шапки будут храниться в переменной $http_response_header. Начиная с PHP 4.3.0, header-информация может быть запрошена с использованием функции file_get_wrapper_data(). HTTP-соединения являются read-only; вы не можете записывать данные или копировать файлы в HTTP-ресурс. Версии до PHP 4.0.5 не обрабатывают HTTP-перенаправления. Поэтому директории обязаны иметь ведомые слэши. Если filename начинается с "ftp://" (нечувствительно к регистру), открывается ftp-соединение со специфицированным сервером и возвращается указатель на запрашиваемый файл. Если сервер не поддерживает ftp пассивного режима, это не удастся сделать. Вы можете открывать файлы для чтения или записи через ftp (но не для того и другого одновременно). Если удалённый/remote файл уже существует на ftp-сервере и вы пытаетесь открыть его для записи, это не получится. Если вам нужно обновить существующие файлы по ftp, используйте ftp_connect(). Если filename это "php://stdin", "php://stdout" или "php://stderr", будет открыт соответствующий поток stdio. (Это появилось в PHP 3.0.13; до этого такие имена файлов, как "/dev/stdin" или "/dev/fd/0", должны были использоваться для доступа к stdio-потокам.) Если filename начинается ещё с чего-нибудь, файл будет открыт из файловой системы и будет возвращён указатель на открытый файл. Если открыть файл не удалось, эта функция возвращает FALSE. mode может иметь значения:
Вы можете использовать необязательный третий параметр и установить в него значение "1", если хотите найти файл также и в include_path. Если у вас проблемы с чтением и записью файлов и вы используете версии серверных модулей PHP, не забудьте убедиться, что используемые вами файлы и директории доступны для серверного процесса. На платформе Windows мнемонизируйте (escape) все обратные слэши в пути к файлу или используйте обычные слэши.
См. также fclose(), fsockopen(), socket_set_timeout() и popen(). |
||||||||||
|
||||||||||
// Работа в PHP 3 и в PHP 4. class Constructor_Cart extends Cart { function
Constructor_Cart($item = "10", $num = 1) { $this->add_item ($item, $num);
} } // Использовать ту же заглушку. $default_cart = new Constructor_Cart; // Создать
новый ... $different_cart = new Constructor_Cart("20", 17);
|
Вы можете также использовать операцию @ для подавления ошибок, возникающих в конструкторе, например, @new.
| Внимание! |
|---|
|
В PHP 3 получаемые классы и конструкторы имеют некоторые ограничения. Следующие примеры нужно внимательно разобрать, чтобы понять эти ограничения. |
class A { function A() { echo "I am the constructor of A.<br>\n";
} } class B extends A { function C() { echo "I am a regular <br>\n"; }
} // в PHP 3 конструктор не вызывается. $b = new B;
|
| |