HOWTO · PHP

Escrever Array a um ficheiro em PHP

Este tutorial demonstra como escrever matrizes em um arquivo em PHP

Nesta página

Apresentaremos uma maneira de escrever um array em um arquivo em PHP usando as funções print_r() e file_put_contents(). Este método grava a matriz especificada no arquivo especificado no sistema.

Também apresentaremos uma maneira de imprimir um array em um arquivo PHP usando as funções print_r() e fwrite(). Usamos a função fopen() para criar o arquivo.

Apresentaremos uma solução permanente para exibir todos os erros do PHP, alterando o arquivo php.ini. Os dois métodos mencionados acima não ajudarão a exibir os erros de análise, como chaves e ponto-e-vírgulas ausentes.

Use as funções print_r() e file_put_contents() para escrever o array para o arquivo em PHP

Este método pode criar um array e usar a função print_r() para retornar o array e usar a função file_put_content() para carregar o array para o arquivo. A função print_r() leva o array a ser impresso e o valor booleano como parâmetros. O valor booleano determina se a matriz será retornada. O valor padrão é falso. A função file_put_contents() leva o caminho do arquivo como o primeiro parâmetro. O segundo parâmetro é o conteúdo a ser carregado no arquivo.

Por exemplo, crie um array associativa. um array associativa é o tipo de array em que as chaves são strings em vez de números. Crie as chaves como name, age e bike. Atribua os valores Jack, 24 e fireblade como o valor das chaves. Atribua a matriz a uma variável $b. Use a função print_r() e pegue os parâmetros $b e um valor booleano de true. Então, escreva a função file_put_contents() e especifique um arquivo filename.txt como o primeiro parâmetro e a função print_r() acima como o segundo parâmetro.

No exemplo abaixo, a função print_r() retorna as informações do array. Ele não imprime os itens da página da web. Um arquivo filename.txt será criado no diretório raiz onde o array é impresso. Verifique o print_r() no manual do PHP para saber mais sobre a função.

Código de exemplo:

# php 7.*
<?php
$b = array (
    'name' => 'Jack', 
    'age' => 24, 
    'bike' => 'fireblade');
file_put_contents('filename.txt', print_r($b, true));
?>

Resultado:

Array
(
 [name] => Jack
 [age] => 24
 [bike] => fireblade
)

Use as funções fopen(), print_r() e fwrite() para escrever o array para o arquivo em PHP

Podemos usar o método fwrite() para escrever o array no arquivo. Este método cria um arquivo gravável no diretório com a função fopen(). Podemos criar um array e usar a função print_r() para retornar o array e usar a função fwrite() para escrever o array no arquivo. A função print_r() leva o array a ser impresso e o valor booleano como parâmetros.

Use a função fopen() para criar um arquivo file.txt com w como o segundo parâmetro. Atribua a função fopen() a uma variável $fp. Use a função print_r() e pegue os parâmetros $b e um valor booleano de true. Em seguida, escreva a função fwrite() e forneça a variável $fp como o primeiro parâmetro e a função print_r() acima como o segundo parâmetro.

No exemplo abaixo, a função fopen() cria um arquivo file.txt no diretório raiz. A matriz é gravada no arquivo usando a função fwrite(). Verifique o manual do PHP para aprender mais sobre a função fwrite().

Código de exemplo:

#php 7.x
<?php
$b = array (
    'name' => 'Harry', 
    'age' => 22, 
    'bike' => 'hayabusa');
$fp = fopen('file.txt', 'w');
fwrite($fp, print_r($b, true));
?>

Resultado:

Array
(
 [name] => Harry
 [age] => 22
 [bike] => hayabusa
)

Use as funções fopen(), var_export() e fwrite() para gravar a matriz no arquivo

Usamos a função var_export() em vez da função print_r() neste método para retornar o array que precisa ser impresso. A função var_export() leva o array a ser impresso e o valor booleano como parâmetros, assim como na função print_r(). Criamos um arquivo gravável no diretório com a função fopen(). Usamos a função fwrite() para escrever o array no arquivo tomando o array e a função var_export() como parâmetros. A função var_export() retorna o código PHP válido do parâmetro especificado.

Por exemplo, escreva a função fwrite() e forneça a variável $fp como o primeiro parâmetro e a função var_export() acima como o segundo parâmetro. Forneça a variável $b e o valor booleano true como os parâmetros para a função var_export().

No exemplo abaixo, a função var_export() resulta em uma saída diferente em termos de estrutura ao invés da função print_r(). O array impresso pela função var_export() é um código PHP válido e pode ser executado ao contrário da saída gerada pela função print_r(). Por favor, verifique o Manual do PHP para entender a função var_export().

Exemplo de código:

#php 7.x
<?php
$b = array (
    'name' => 'James', 
    'age' => 27, 
    'bike' => 'Yamaha R1');
$fp = fopen('file.txt', 'w');
fwrite($fp, var_export($b, true));
fclose($fp);
?>

Resultado :

array (
 'name' => 'James',
 'age' => 27,
 'bike' => 'Yamaha R1',
)