Identical to readfile(), except that file() returns the file in an array. Each element of the array corresponds to a line in the file, with the newline still attached. Upon failure, file() returns FALSE.
You can use the optional use_include_path parameter and set it to "1", if you want to search for the file in the include_path, too.
<?php // Get a file into an array. In this example we'll go through HTTP to get // the HTML source of a URL. $lines = file ('http://www.example.com/'); // Loop through our array, show html source as html source; and line numbers too. foreach ($lines as $line_num => $line) { echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n"; } // Another example, let's get a web page into a string. See also file_get_contents(). $html = implode ('', file ('http://www.example.com/')); ?> |
Tip: You can use a URL as a filename with this function if the fopen wrappers have been enabled. See fopen() for more details on how to specify the filename and Appendix I for a list of supported URL protocols.
Note: Each line in the resulting array will include the line ending, so you still need to use trim() if you do not want the line ending present.
Note: If you are having problems with PHP not recognizing the line endings when reading files either on or created by a Macintosh computer, you might want to enable the auto_detect_line_endings run-time configuration option.
Note: As of PHP 4.3.0 you can use file_get_contents() to return the contents of a file as a string.
In PHP 4.3.0 file() became binary safe.
Note: Context support was added with PHP 5.0.0
See also readfile(), fopen(), fsockopen(), popen(), file_get_contents(), and include().