file
(PHP 4, PHP 5, PHP 7, PHP 8)
file — Lê todo o arquivo para um array
Descrição
Carrega todo um arquivo em um array.
Note:
Pode-se utilizar file_get_contents() para retornar o conteúdo de um arquivo como uma string.
Parâmetros
filename
-
Caminho para o arquivo.
TipUma URL pode ser usada como um nome de arquivo com esta função se os wrappers fopen estiverem habilitados. Consulte a função fopen() para mais detalhes sobre como especificar o nome do arquivo. Consulte os Protocolos e empacotadores suportados para obter links para informações sobre as capacidades de cada wrapper, notas de uso e informações sobre quaisquer variáveis predefinidas que eles possam fornecer.
flags
-
O parâmetro opcional
flags
pode ser uma ou mais das seguintes constantes:-
FILE_USE_INCLUDE_PATH
- Procurar pelo arquivo no include_path.
-
FILE_IGNORE_NEW_LINES
- Omite a quebra de linha no final de cada elemento do array
-
FILE_SKIP_EMPTY_LINES
- Pula linhas vazias
-
FILE_NO_DEFAULT_CONTEXT
- Não usa o contexto padrão
-
context
-
Um resource de contexto de stream.
Valor Retornado
Retorna o arquivo em um array. Cada elemento do array corresponde a uma
linha no arquivo, ainda com a quebra de linha. Em caso de falha,
file() retorna false
Note:
Cada linha no array incluirá a quebra de linha, a não ser que
FILE_IGNORE_NEW_LINES
seja usado.
Note: Se o PHP não estiver reconhecendo corretamente os finais de linha ao ler arquivos em um computador Macintosh ou que foram criados em um, habilitar a opção de configuração em tempo de execução auto_detect_line_endings pode ajudar a resolver o problema.
Erros/Exceções
Emite um aviso E_WARNING
se o arquivo
não existe.
Exemplos
Example #1 Exemplo de file()
<?php
// Lê um arquivo em um array. Nesse exemplo será obtido o código fonte HTML de
// uma URL via HTTP
$lines = file ('http://www.example.com/');
// Percorre o array, mostrando o fonte HTML com numeração de linhas.
foreach ($lines as $line_num => $line) {
echo "Linha #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}
// Usando o parâmetro de opções opcionais
$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
?>
Notas
Ao usar SSL, o Microsoft IIS
violará o protocolo fechando a conexão sem enviar uma notificação
close_notify
. O PHP reportará isso como "SSL: Fatal
Protocol Error" quando chegar ao final dos dados. Para contornar isso, o
valor de error_reporting deve ser
reduzido a um nível que não inclua avisos.
O PHP pode detectar servidores IIS defeituosos quando o stream
é aberto usando o wrapper https://
e suprimirá o aviso.
Ao usar fsockopen() para criar um soquete
ssl://
, o desenvolvedor é responsável por detectar
e suprimir este aviso.
Veja Também
- file_get_contents() - Lê todo o conteúdo de um arquivo para uma string
- readfile() - Exibe o conteúdo de um arquivo
- fopen() - Abre um arquivo ou URL
- fsockopen() - Abre uma conexão socket de domínio Unix ou de Internet
- popen() - Abre um processo como ponteiro de arquivo
- include - include
- stream_context_create() - Cria um contexto de fluxo