file_get_contents
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
file_get_contents — Lê todo o conteúdo de um arquivo para uma string
Descrição
file_get_contents
( string $filename
[, int $flags
[, resource $context
[, int $offset
[, int $maxlen
]]]] ) : string
file_get_contents() é o método preferível para ler o
conteúdo de um arquivo em uma string. Ela usa técnicas de mapeamento de memória
suportadas pelo seu SO para melhorar a performance.
Nota:
Se você estiver abrindo uma URI com caracteres especiais, como espaços, você
precisa codificar a URI com urlencode().
Parâmetros
-
filename
-
Nome do arquivo para ler.
-
flags
-
Aviso
Para todas as versões anteriores ao PHP 6, este parâmetro é chamado
use_include_path
e é um bool.
O parâmetro flags
está disponível somente
a partir do PHP 6. Se você estiver usando uma versão anterior e quiser buscar
o arquivo filename
no
include_path, este
parâmetro deve ser true
. A partir do PHP 6, você deve usar a flag
FILE_USE_INCLUDE_PATH
.
O valor de flags
pode ser qualquer combinação das
seguintes flags (com algumas restrições), unidas com o operador binário OR
(|
).
Flags disponíveis
Flag |
Descrição |
FILE_USE_INCLUDE_PATH
|
Procura o arquivo filename nos diretórios de include.
Veja include_path para mais
informações.
|
FILE_TEXT
|
Se a semântica unicode estiver habilitada, o encoding padrão dos dados
lidos é UTF-8. Você pode especificar um encoding diferente criando um
contexto personalizado ou alterando o encoding padrão utilizando
stream_default_encoding(). Esta flag não pode ser
usada com FILE_BINARY .
|
FILE_BINARY
|
Com esta flag, o arquivo é lido em modo binário. Esta é a opção
padrão e não pode ser usada com FILE_TEXT .
|
-
context
-
Um recurso de contexto válido, criado com
stream_context_create(). Se você não precisa usar um
contexto personalizado, você pode ignorar este parâmetro passando null
.
-
offset
-
O ponto onde a leitura deve começar.
-
maxlen
-
Comprimento máximo dos dados lidos.
Valor Retornado
A função retorna os dados lidos ou false
em caso de falha.
Notas
Nota: Esta função é
binary-safe.
DicaUma URL pode ser utilizada como
um nome de arquivo se fopen wrappers estiver ativo.
Veja fopen() para mais detalhes em como especificar
URLs como nome de arquivo. Veja também the Protocolos e Wrappers suportados para informações sobre
que capacidades cada wrapper tem, notas de uso e
informações sobre variáveis predefinidas
fornecidas.
AvisoQuando usando SSL, o Microsoft IIS
irá violar o protocolo fechando a conexão sem enviar uma notificação
close_notify
. O PHP acusará isso como sendo "SSL: Fatal
Protocol Error" quando tentar ler os dados. Para prevenir isso, o valor de
error_reporting deve ser
reduzido para um nível que não inclui avisos.
para o nível que não emita warnings.
O PHP 4.3.7 e seguintes conseguem detectar servidores IIS defeituosos quando você abre
um stream utilizando o wrapper https://
e suprimirá os avisos.
Se você está usando fsockopen() para criar um socket
ssl://
, a responsabilidade de detectar e suprimir esse aviso passa para você.