filename
が"http://"(大文字小文字は区別しません) で始まっている場合、指定されたサーバに対するHTTP 1.0コネクションが
オープンされ、HTTP GETメソッドを用いてそのページがリクエストされ、
返された応答の本体の先頭を指すファイルポインタが返されます。 名前に基づく仮想ホストを処理するために'Host:'
ヘッダが、リクエストで 送信されます。
ファイルポインタによりレスポンスの
本体
のみを 取得することが可能であることに注意して下さい。この関数を用いて
HTTPレスポンスにアクセスすることはできません。
PHP 4.0.5 より前のバージョンは、HTTPリダイレクトを処理しませんでし
た。このため、ディレクトリは末尾にスラッシュを含む必要がありました。
filename
が"ftp://"(大文字小文字は区別しません) で始まっている場合、指定されたサーバに対する
FTPコネクションがオープンされ、要求したファイルへのポインタが 返されます。そのサーバがパッシブ・モードFTPをサポートして
いない場合は、この関数は失敗します。 ftp経由で読みこみまたは書きこみのどちらかでファイルオープンする
ことが可能です、(しかし、同時に両方を行うことはできません。)
filename
が"php://stdin","php://stdout",
"php://stderr"のどれかで始まっている場合、対応するstdioストリームが オープンされます。 (この機能はPHP
3.0.13で導入されました。これ以前のバージョンでは、 stdioストリームにアクセスするために
"/dev/stdin"または"/dev/fd/0"のようなファイル名を使用する必要があります。)
filename
が上記以外の場合、指定された ファイルがファイルシステムよりオープンされ、そのオープンされた
ファイルへのファイルポインタが返されます。
オープンに失敗すると、この関数は
FALSE
を返します。
mode
は次のどれかになります。
'r' - 読みこみのみでオープンします。ファイルポインタをファイルの
先頭に置きます。
'r+' - 読みこみ・書きこみ用にオープンします。ファイルポインタを
ファイルの先頭に置きます。
'w' - 書きこみのみでオープンします。ファイルポインタをファイルの
先頭に置き、ファイルサイズをゼロにします。ファイルが存在しない 場合には、作成を試みます。
'w+' - 読みこみ・書きこみ用でオープンします。ファイルポインタを
ファイルの先頭に置き、ファイルサイズをゼロにします。 ファイルが存在しない場合には、作成を試みます。
'a' - 書きこみのみでオープンします。ファイルポインタをファイルの
終端に置きます。ファイルが存在しない場合には、作成を試みます。
'a+' - 読みこみ・書きこみ用でオープンします。ファイルポインタを
ファイルの終端に置きます。ファイルが存在しない場合には、作成を 試みます。
オプションの2番目の引数を使用して、これに"1"を設定する ことにより、
include_path
のファイルの検索も行うこともできます。
ファイルの読みこみ・書きこみ時に問題が発生し、 サーバーモジュール版のPHPを使用している場合、
使用するファイル・ディレクトリがサーバープロセスからアクセス可能 かどうかを確認してみてください。
Windows 環境では、ファイルパスで用いる全てのバックスラッシュを
エスケープするかフォワードスラッシュを使用することに注意して下さい。
fclose()
,
fsockopen()
,
socket_set_timeout()
,
popen()
も参照下さい。