Programming Tutorials

Creating or Opening a File in PHP

By: David Sklar in PHP Tutorials on 2008-12-01  

Use fopen():

$fh = fopen('file.txt','r') or die("can't open file.txt: $php_errormsg");

The first argument to fopen()is the file to open; the second argument is the mode to open the file in. The mode specifies what operations can be performed on the file (reading and/or writing), where the file pointer is placed after the file is opened (at the beginning or end of the file), whether the file is truncated to zero length after opening, and whether the file is created if it doesn't exist, as shown in Table below.

fopen() file modes

Mode

Readable?

Writeable?

File pointer

Truncate?

Create?

r

Yes

No

Beginning

No

No

r+

Yes

Yes

Beginning

No

No

w

No

Yes

Beginning

Yes

Yes

w+

Yes

Yes

Beginning

Yes

Yes

a

No

Yes

End

No

Yes

a+

Yes

Yes

End

No

Yes

On non-POSIX systems, such as Windows, you need to add a b to the mode when opening a binary file, or reads and writes get tripped up on NUL (ASCII 0) characters:

$fh = fopen('c:/images/logo.gif','rb');

To operate on a file, pass the file handle returned from fopen( ) to other I/O functions such as fgets(), fputs(), and fclose( ).

If the file given to fopen() doesn't have a pathname, the file is opened in the directory of the running script (web context) or in the current directory (command-line context).

You can also tell fopen() to search for the file to open in the include_path specified in your php.ini file by passing 1 as a third argument. For example, this searches for file.inc in the include_path:

$fh = fopen('file.inc','r',1) or die("can't open file.inc: $php_errormsg");





Add Comment

* Required information
1000

Comments

No comments yet. Be the first!

Most Viewed Articles (in PHP )

All possible substrings in a String in PHP

break out of an if() block in PHP

Exception in module wampmanager.exe at 000F15A0 in Windows 8

Function to convert strings to strict booleans in PHP

History and origin of PHP

Locking files in PHP

PHP Warning: Unknown(): Unable to load dynamic library '/usr/local/php4/lib/php/extensions/no-debug ......

Decrypting files using GnuPG (GPG) via PHP

How to make one else for two ifs in PHP

PHP pages does not display in IIS 6 with Windows 2003

PHP ./configure RESULTING IN __rcp_thread_destroy@GLIBC_2_2_3_... AND UNRESOLVED REFERENCES WITH ORACLE OCI8

HTML table output using Nested for loops in PHP

Function to return number of digits of an integer in PHP

Perl's Encoding::FixLatin equivalent in PHP

Cannot load /usr/local/apache/libexec/libphp4.so into server: ld.so.1:......

Latest Articles (in PHP)