Abrir arquivo PHP

Resumo : neste tutorial você aprenderá como abrir um arquivo em PHP usando a fopen()função.

Introdução à função PHP fopen()

Antes de ler ou gravar em um arquivo, você precisa abri-lo. Para abrir um arquivo, você usa a fopen()função da seguinte forma:

fopen ( string $filename , string $mode , bool $use_include_path = false , resource $context = ? ) : resource
Linguagem de código:  PHP  ( php )

O fopen()possui os seguintes parâmetros:

  • $filenameé o caminho para o arquivo que você deseja abrir.
  • $modeespecifica o tipo de acesso necessário ao fluxo. Veja a tabela abaixo.
  • $use_include_pathdetermina se fopen()também deve procurar o arquivo no caminho de inclusão.
  • $contextespecifica o contexto do fluxo .

O fopen()retorna o recurso de ponteiro de arquivo se ele abrir o arquivo com êxito ou falsese não conseguir abrir o arquivo.

A tabela a seguir mostra o tipo de acesso do $modeparâmetro:

Modo Leitura Escrita Ponteiro de arquivo O arquivo não existe, criar? Se o arquivo existir
‘r’ Sim Não No início do arquivo Não
‘r+’ Sim Sim No início do arquivo Não
‘c’ Não Sim No início do arquivo Não
‘c+’ Sim Sim No início do arquivo Sim
‘a’ Não Sim No final do arquivo Sim
‘um+’ Sim Sim No final do arquivo Sim
‘x’ Não Sim No início do arquivo Sim Retorna falso
‘x+’ Sim Sim No início do arquivo Sim Retorna falso
‘c’ Não Sim No início do arquivo Sim
‘c+’ Sim Sim No início do arquivo Sim

Ao trabalhar com um arquivo binário, você precisa anexar o caractere  b ao $modeargumento. Por exemplo, o  'rb'modo abre um arquivo binário para leitura.

Depois de abrir um arquivo e concluir o trabalho com ele, você deve sempre fechá-lo. Se você não fechar um arquivo corretamente, isso poderá causar muitos problemas. Por exemplo, talvez você não consiga acessar o arquivo novamente.

Para fechar um arquivo, você passa o ponteiro do arquivo para a fclose()função:

fclose ( resource $stream ) : boolLinguagem de código:  PHP  ( php )

A fclose()função retorna trueem caso de sucesso ou falsefalha.

É uma boa prática verificar se existe um arquivo antes de abri-lo.

Exemplo de arquivos abertos em PHP

O exemplo a seguir usa o fopen()para abrir o readme.txtarquivo para leitura:

<?php

$filename = 'readme.txt';

if (!file_exists($filename)) {
    die("The file $filename does not exist.");
}

$f = fopen($filename, 'r');
if ($f) {
    // process the file
    // ...
    echo 'The file ' . $filename . ' is open';
    fclose($f);
}
Linguagem de código:  HTML, XML  ( xml )

Como funciona.

  • Primeiro, use a file_exists()função para verificar se o readme.txtarquivo existe. Caso contrário, lance uma exceção dizendo que o arquivo não existe.
  • Segundo, use a fopen()função para abrir readme.txtpara leitura.
  • Terceiro, feche o arquivo no finallybloco somente se o ponteiro do arquivo não for null.

Resumo

  • Use a fopen()função para abrir um arquivo para leitura, gravação e acréscimo.
  • Sempre use a fclose()função para fechar o arquivo que foi aberto pela fopen()função.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *