file_get_contents
(PHP 4 >= 4.3.0, PHP 5)
file_get_contents — Reads entire file into a string
Description
string file_get_contents
( string $filename
[, int $flags
[, resource $context
[, int $offset
[, int $maxlen
]]]] )
file_get_contents() is the preferred way to read the
contents of a file into a string. It will use memory mapping techniques if
supported by your OS to enhance performance.
Note:
If you're opening a URI with special characters, such as spaces, you
need to encode the URI with urlencode().
Parameters
-
filename
-
Name of the file to read.
-
flags
-
Warning
For all versions prior to PHP 6, this parameter is called
use_include_path
and is a bool.
The flags
parameter is only available since
PHP 6. If you use an older version and want to search for
filename
in the
include path, this
parameter must be TRUE. Since PHP 6, you have to use the
FILE_USE_INCLUDE_PATH flag instead.
The value of flags
can be any combination of
the following flags (with some restrictions), joined with the binary OR
(|) operator.
Available flags
Flag |
Description |
FILE_USE_INCLUDE_PATH
|
Search for filename
in the include directory.
See include_path for more
information.
|
FILE_TEXT
|
If unicode semantics are enabled, the default encoding of the read
data is UTF-8. You can specify a different encoding by creating a
custom context or by changing the default using
stream_default_encoding(). This flag cannot be
used with FILE_BINARY.
|
FILE_BINARY
|
With this flag, the file is read in binary mode. This is the default
setting and cannot be used with FILE_TEXT.
|
-
context
-
A valid context resource created with
stream_context_create(). If you don't need to use a
custom context, you can skip this parameter by NULL.
-
offset
-
The offset where the reading starts.
-
maxlen
-
Maximum length of data read.
Return Values
The function returns the read data or FALSE on failure.
Notes
Note: This function is
binary-safe.
WarningWhen using SSL, Microsoft IIS
will violate the protocol by closing the connection without sending a
close_notify indicator. PHP will report this as "SSL: Fatal
Protocol Error" when you reach the end of the data. To work around this, the
value of error_reporting should be
lowered to a level that does not include warnings.
PHP 4.3.7 and higher can detect buggy IIS server software when you open
the stream using the https:// wrapper and will suppress the
warning. When using fsockopen() to create an
ssl:// socket, the developer is responsible for detecting
and suppressing this warning.