fopen

fopen -- Opens file or URL

Description

int fopen ( string filename, string mode [, int use_include_path])

If filename begins with " http : / / " (not case sensitive ) , an HTTP 1.0 connection is opened to the specified server , the page is requested using the HTTP GET method , and a file pointer is returned to the beginning of the body of the response . A ' Host : ' header is sent with the request in order to handle name-based virtual hosts .

As of PHP 4.3.0 ( not yet released) , if you have compiled in support for OpenSSL , you may use "https : / / " to open an HTTP connection over SSL .

Note that the file pointer allows you to retrieve only the body of the response ; to retrieve the HTTP response header you need to be using PHP 4.0.5 or later ; The headers will be stored in the $http_response_header variable . As of PHP 4.3.0 ( not yet released) , the header information can be retrieved using the file_get_wrapper_data( ) .

HTTP connections are read-only ; you cannot write data or copy files to an HTTP resource .

Versions prior to PHP 4.0.5 do not handle HTTP redirects . Because of this , directories must include trailing slashes .

If filename begins with " ftp : / / " (not case sensitive ) , an ftp connection to the specified server is opened and a pointer to the requested file is returned . If the server does not support passive mode ftp , this will fail . You can open files for either reading or writing via ftp ( but not both simultaneously ) . If the remote file already exists on the ftp server and you attempt to open it for writing , this will fail . If you need to update existing files over ftp , use ftp_connect( ) .

If filename is one of " php : / /stdin" , "php : / /stdout" , or "php : / /stderr" , the corresponding stdio stream will be opened . (This was introduced in PHP 3.0.13 ; in earlier versions , a filename such as " / dev / stdin " or " / dev / fd / 0 " must be used to access the stdio streams . )

If filename begins with anything else , the file will be opened from the filesystem , and a file pointer to the file opened is returned .

mode may be any of the following :



הערה :

You can use the optional third parameter and set it to " 1 " , if you want to search for the file in the include_path , too .

דוגמה 1 . fopen( ) example

 
$fp

 
=

 
fopen

 
(

 
"

 
/

 
home

 
/

 
rasmus

 
/

 
file.txt"

 
,

 
"r")

 
;

 
$fp

 
=

 
fopen

 
("

 
/

 
home

 
/

 
rasmus

 
/

 
file.gif"

 
,

 
"wb")

 
;

 
$fp

 
=

 
fopen

 
("http

 
:

 
/

 
/www.example.com

 
/

 
"

 
,

 
"r")

 
;

 
$fp

 
=

 
fopen

 
("ftp

 
:

 
/

 
/user:password@example.com

 
/

 
"

 
,

 
"w")

 
;





 
$fp

 
=

 
fopen

 
(

 
"c:\\data\\info.txt"

 
,

 
"r")

 
;





See also fclose( ) , fsockopen( ) , socket_set_timeout( ) , and popen( ) .