Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ringeril

[Resolvido] Criar, escrever e deletar

Recommended Posts

Boas,

 

Agora que consegui fazer meu insert, que vocês me ajudaram, queria aprende a:

 

.Criar um arquivo.

.Escrever nesse aquivo.

.Deletar após um tempo.

 

Queria algo por onde começar.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beleza Beraldo,

 

Olhando esses links, cheguei à isso:

 

 

escrever.php

<?php
$filename = 'teste.txt';
$conteudo = "<tr><td>Acrescentar isso ao arquivo</td></tr>";

// 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";
}
?>

ler.php

<?php
$filename = "teste.txt";
$handle = fopen ($filename, "rb");
$conteudo = fread ($handle, filesize ($filename));

echo "<table align=center border=1 width=300px>";

echo $conteudo;

echo "</table>";

fclose ($handle);
?>

apagar.php

<?php
$filename = "teste.txt";

unlink($filename);

?>

Mas, no ler.php queria que ele começasse a ler de baixo pra cima, ao contrário do que lê agora.

E também gostaria de criar ele, pois esse escrever.php não está criando.

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O modo "a" não cria o arquivo. Se quiser que o PHP o crie se não existir, use o modo "w".

Ler ao contrário seria isto?

Considerando o arquivo

 

teste

a saída deve ser:

etset

 

Se sim, creio que a única forma é fazer manualmente: abra o arquivo, use fseek() para mover o ponteiro para o final do arquivo, use fgetc() para ler um caractere, use fseek() para reposicionar o ponteiro para trás, fgetc() de novo e assim por diante.

Compartilhar este post


Link para o post
Compartilhar em outros sites

OK, vou usar o modo W.

 

Mas, sobre ler ao contrário, me espressei mal.

Seria isso aqui:

 

linha 1

linha 2

A saida seria:

linha 2

linha 1

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tenho idéia de como fazer ler ao contrário:

 

<?php
// Le um arquivo em um array. Nesse exemplo você pode obter via HTTP para obter
// o código fonte HTML de uma URL.
$lines = file ('teste.txt');

// Roda através do array, mostrando o fonte HTML com numeração de linhas.
foreach ($lines as $line_num => $line) {
echo "Linha #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";
}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não tenho idéia de como fazer ler ao contrário:

 

<?php
// Le um arquivo em um array. Nesse exemplo você pode obter via HTTP para obter
// o código fonte HTML de uma URL.
$lines = file ('teste.txt');

// Roda através do array, mostrando o fonte HTML com numeração de linhas.
foreach ($lines as $line_num => $line) {
echo "Linha #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";
}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O modo "a" não cria o arquivo

Cria sim,ve se existe,se existir,abre o arquivo posicionando o ponteiro no final do mesmo,senão o cria.

Ringeril...use array_reverse.

<?php
// Le um arquivo em um array. Nesse exemplo você pode obter via HTTP para obter
// o código fonte HTML de uma URL.
$lines = array_reverse(file('teste.txt'));

// Roda através do array, mostrando o fonte HTML com numeração de linhas.
foreach ($lines as $line_num => &$line) {
echo "Linha #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";
}
?>

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O modo "a" não cria o arquivo

Cria sim,ve se existe,se existir,abre o arquivo posicionando o ponteiro no final do mesmo,senão o cria.

É que em C o modo 'a' não cria o arquivo.

Já estou confundindo tudo... http://forum.imasters.com.br/public/style_emoticons/default/natal_laugh.gif

 

 

Para ler um vetor ao contrário, faça assim:

$size = count($array);

for ($i = $size - 1; $i >= 0; $i--)
{
	echo $array[$i];
}

 

Mas para o caso corrente, prefira a solução do proust. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

 

Apesar de que apenas ler ao contrário acho que é mais rápido. Qualquer coisa, faça um teste com o tempo de execução. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.