International PHP Conference 2015

fwrite

(PHP 4, PHP 5, PHP 7)

fwriteEscrita binary-safe em arquivos

Descrição

int fwrite ( resource $handle , string $string [, int $length ] )

fwrite() escreve o conteúdo da string para o stream de arquivo apontado por handle.

Parâmetros

handle

A file system pointer resource that is typically created using fopen().

string

A string a ser escrita.

length

Se o argumento comprimento for dado, a escrita irá parar depois que comprimento bytes tenham sido escritos ou o final da string seja alcançado, o que vier primeiro.

Observe que se o argumento comprimento for dado, a opção de configuração magic_quotes_runtime será ignorada e nenhuma barra será removida da string.

Valor Retornado

fwrite() retorna o número de bytes escritos, ou FALSE em caso de erro.

Notas

Nota:

Em sistemas que diferenciam entre arquivos binários e texto (por exemplo Windows) o arquivo tem que ser aberto com 'b' incluído no parâmetro 'mode' na fopen().

Nota:

Se o handle foi aberto com fopen() em modo de adição, escritas com fwrite() são atômicas (a não ser que o tamanho da string exceda o tamanho de bloco do sistema de arquivos, em algumas plataformas, e contanto que o arquivo esteja em um sistema de arquivos local). Sendo assim, não há necessidade de bloquear um recurso com flock() antes de chamar fwrite(); todos os dados serão escritos sem interrupção.

Nota:

Se escrevendo duas vezes para o ponteiro do arquivo, então a informação será adicionado ao final do contéudo do arquivo, significando que o exemplo abaixo não funcionaria como esperado:

<?php
$fp 
fopen('data.txt''w');
fwrite($fp'1');
fwrite($fp'23');
fclose($fp);

// o conteúdo de 'data.txt' agora é 123 e não 23!
?>

Exemplos

Exemplo #1 Um simples exemplo de fwrite()

<?php
$filename 
'teste.txt';
$conteudo "Acrescentar isso ao arquivo\n";

// Primeiro vamos ter certeza de que o arquivo existe e pode ser alterado
if (is_writable($filename)) {

 
// Em nosso exemplo, nós vamos abrir o arquivo $filename
 // em modo de adição. O ponteiro do arquivo estará no final
 // do arquivo, e é pra lá que $conteudo irá quando o 
 // escrevermos com fwrite().
    
if (!$handle fopen($filename'a')) {
         echo 
"Não foi possível abrir o arquivo ($filename)";
         exit;
    }

    
// Escreve $conteudo no nosso arquivo aberto.
    
if (fwrite($handle$conteudo) === FALSE) {
        echo 
"Não foi possível escrever no arquivo ($filename)";
        exit;
    }

    echo 
"Sucesso: Escrito ($conteudo) no arquivo ($filename)";

    
fclose($handle);

} else {
    echo 
"O arquivo $filename não pode ser alterado";
}
?>

Veja Também

  • fread() - Leitura binary-safe de arquivo
  • fopen() - Abre um arquivo ou URL
  • fsockopen() - Abre um socket de conexão Internet ou de domínio Unix
  • popen() - Abre um processo como ponteiro de arquivo
  • file_get_contents() - Lê todo o conteúdo de um arquivo para uma string

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top