Este simples tutorial mostrará à você como ler e escrever dados em um arquivo de texto (.txt) usando o PHP, fazendo a leitura de um arquivo contendo uma lista de URL’s e atualizando o conteúdo desse arquivo adicionando novas URL’s.
1. Vamos ler o arquivo contendo as URL’s. Para isso lembre-se de criar um arquivo do tipo texto contendo alguns endereços web, salvando-o na mesma pasta que está seu arquivo PHP. O código abaixo fará a leitura dos dados no arquivo txt enviando esses dados para uma variável.
2. Supondo que eu já tenha um vetor com URL’s que quero gravar no meu arquivo. O que eu preciso fazer é verificar se as URL’s que existem no meu vetor já existem no arquivo. Caso uma URL qualquer do vetor seja igual à do arquivo texto, deverei apagá-la do meu vetor para que não seja gravada repetidamente.
3. Caso a URL que estou lendo no vetor seja diferente de todas as URL’s já existentes no arquivo, então esta é adicionada ao final do arquivo.
Abaixo você pode ler e copiar o código completo com mais alguns comentários para ficar mais claro.
< ?php
// Variável que recebe o conteúdo do arquivo texto.
$existing_links = file_get_contents("links.txt");
// Vetor que recebe as URLs que serão adicionados ao arquivo
$link_array = array("http://copqo.com","http://google.com");
// Variável que receberá as URLs que ainda não existem no arquivo
$links_tobe_added = "";
// Inicia a leitura do vetor
for( $i = 0 ; $i < count($link_array) ; $i++ ) {
// Compara as URLs do vetor com as do arquivo.
// Se a URL já existe, retorna true, senão retorna false.
$url_exists = strpos($existing_links, $link_array[$i]);
// Verifica se a URL já existe
if ($url_exists == true) {
// Esta variável recebe a URL que deve ser adicionada no arquivo
$links_tobe_added .= $link_array[$i]."\r\n";
}
}
// Abre o arquivo para gravação. Se não conseguir abrí-lo, retorna erro
$fh = fopen("links.txt", 'a') or die("Não foi possível abrir o arquivo...");
// Escreve as URLs selecionadas no arquivo
fwrite($fh,$links_tobe_added);
// Fecha o arquivo no final da gravação.
fclose($fh);
?>
Por hoje é isto. Em caso de dúvidas ou sugestões para melhorar o código acima, fiquem à vontade para comentar.
Retirado de: http://copqo.com/tutorials/38/php-readwrite-file
Traduzido e adaptado por: Sérgio Novelli






