Como criar um arquivo CSV e gravar em um diretório.

apache, CSV, PHP Comentar >> Marcelo Korjenioski

As fun­ções para mani­pu­lar arqui­vos no PHP são fopen(), fwrite() e fclose().

fopen() — Abre o arquivo
fwrite() — Escreve no arquivo
fclose() — Fecha o arquivo

Para­me­tros para lei­tura e escrita em um arquivo usando fopen();

‘r’ —  Abre somente para lei­tura e coloca o pon­teiro no começo do arquivo.

‘r+’ — Abre para lei­tura e gra­va­ção e coloca o pon­teiro no começo do arquivo.

‘w’ —  Abre somente para gra­va­ção e coloca o pon­teiro no começo do arquivo e apaga o con­teúdo que já foi escrito. Se o arquivo não exis­tir tenta criar.

‘w+’ — Abre para lei­tura e escrita e coloca o pon­teiro no iní­cio do arquivo e apaga o con­teúdo que já foi escrito. Se o arquivo não exis­tir tenta criar.

‘a’ —  Abre o arquivo somente para escrita e coloca o pon­teiro no fim do arquivo. Se o arquivo não exis­tir tenta criar.

‘a+’ — Abre o arquivo para lei­tura e gra­va­ção e coloca o pon­teiro no fim do arquivo. Se o arquivo não exis­tir tenta criar.

// getcwd() retorna o diretório atual em sucesso, ou FALSE em falha.
$caminho = getcwd(). '/csv/';
$data = date('d_m_y');
$file_path = $caminho.$data.'_lista.csv';

$dados = '';
// Nome das colunas
$dados .= 'NOME,IDADE';
$dados .="\n";
// Valores da Coluna

$dados .= 'Maria,21';
$dados .="\n";

$dados .= 'João,33';
$dados .="\n";

// Verifique se vc tem permissão de leitura e escrita neste diretorio
if(fwrite($file=fopen($file_path,'w+'),$dados)) {
fclose($file);
echo "Arquivo gravado com sucesso!";
} else {
echo "Erro ao abrir arquivo!";
}

Caso tenha alguma duvida deixe um comen­tá­rio que terei pra­zer em aju­dar.
Comen­tá­rios são bem vin­dos assim posso melho­rar a qua­li­dade dos tuto­ri­ais aqui apresentados.

Com­par­ti­lhe com seus ami­gos:
  • Print
  • Facebook
  • Google Bookmarks
  • PDF
  • RSS
  • Twitter
  • LinkedIn



  • Jay­son

    Como faço para trans­fo­mar xml para csv !
    agra­deço s ajuda !

  • http://www.phaneronsoft.com/phaneronsoft/2009/05/23/gravar-arquivos-de-log-ao-executar-comandos-sql-no-php/ Mar­celo Korjenioski

    Neste post mos­tra como con­ver­ter um arquivo XML para SQL basta fazer algu­mas alte­ra­ções para con­se­guir criar o arquivo CSV.
    Ano­tei sua soli­ci­ta­ção e vou criar um tuto­rial em breve.

  • http://ideasweb.com.br Saulo Carius

    Ten­tei fazer mais deu um erro, diz que não tenho per­mis­são para abrir esse arquivo, como faço para con­fi­gu­rar as permissões?

  • http://www.phaneronsoft.com Mar­celo Korjenioski

    Se for no Win­dows basta cli­car com o botão direito e dar per­mis­são de lei­tura e escrita para o dire­tó­rio. No Linux você terá que dar a per­mis­são usando “chmod” 6 rw– Lei­tura e escrita.

  • http://www.ramiro.varandas.nom.br Ramiro Varan­das Jr

    Expe­ri­menta usar um array para defi­nir os dados e na hora de sal­var basta fazer:

    file_put_contents($nomeArquivo, implode(“\n”, $dados));

    É bem mais rápido

blog comments powered by Disqus
Designed by NattyWP Wordpress Themes.
Images by desEXign.