PHP:Fitxers: diferència entre les revisions
Salta a la navegació
Salta a la cerca
(→Llegir) |
(→Llegir) |
||
Línia 1: | Línia 1: | ||
==Llegir i posar en Array per linies== | |||
Maxim fitxers de 10MB. | |||
$lines = file("myfile.txt"); | |||
foreach($lines as $line) { | |||
echo($line); | |||
} | |||
echo $line[0]; | |||
o també: | |||
$lines = file('http://www.example.com/'); | |||
==Llegir== | ==Llegir== | ||
<pre> | <pre> |
Revisió del 18:07, 20 març 2010
Llegir i posar en Array per linies
Maxim fitxers de 10MB.
$lines = file("myfile.txt"); foreach($lines as $line) { echo($line); } echo $line[0];
o també:
$lines = file('http://www.example.com/');
Llegir
$nomfitxer = "fitxer.txt"; if (is_file($nomfitxer)) { $fp = fopen($nomfitxer, "r"); if ($fp) { while (flock($fp, LOCK_EX) == false) // do an exclusive lock {usleep(rand(1, 300));} $content = ''; while (!feof($fp)) { $content .= fread($fp, 8192); } flock($fp, LOCK_UN); fclose($fp); } }
fgets enlloc del fread serveix per llegir linia a linia.
Llegir i partir en array per linies i camps
if (is_file($nomfitxer)) { $fp = fopen($nomfitxer, "r"); if ($fp) { while (flock($fp, LOCK_EX) == false) // do an exclusive lock {usleep(rand(1, 300));} $i = 0; while (!feof($fp)) { $content[$i]= split(';',fgets($fp, 8192)); $i++; } flock($fp, LOCK_UN); fclose($fp); } } echo " content 0 0 ="; echo $content[0][0]; echo " content 0 2 ="; echo $content[0][2];
Escriure
$nomfitxer = "fitxer.txt"; $fp = fopen($nomfitxer , "w+"); if ($fp) { while (flock($fp, LOCK_EX) == false) // do an exclusive lock {usleep(rand(1, 300));} fwrite($fp, $content); flock($fp, LOCK_UN); fclose($fp); }
"a+" enlloc de "w+" serveix per afegir al final del fitxer.
Afegir a un registre
$fp = fopen("fitxer.txt", "a+"); fwrite($fp, date("Ymd G:i:s") . "\t" . $_SERVER{'DOCUMENT_ROOT'} . "\t" . $_SERVER{'REQUEST_URI'} . "\t" . $_SERVER{'REDIRECT_URL'} . "\n"); fclose($fp);
Afegir a un registre informació de l'usuari
$elim = array("\n", "\r", "\t", '$', "\\'", "'", "\\"); $info_usuari= str_replace($elim,' ',$HTTP_ACCEPT_LANGUAGE) . "\t" . str_replace($elim,' ',$HTTP_USER_AGENT) . "\t" . str_replace($elim,' ',$HTTP_ACCEPT) . "\t" . str_replace($elim,' ',$HTTP_ACCEPT_ENCODING) . "\t" . str_replace($elim,' ',$HTTP_ACCEPT_CHARSET); if ($_SERVER{'HTTP_X_FORWARDED_FOR'} != "" && $_SERVER{'HTTP_X_FORWARDED_FOR'} != "127.0.0.1") $ipusuari= $_SERVER{'HTTP_X_FORWARDED_FOR'}; else $ipusuari= $_SERVER{'REMOTE_ADDR'}; if ($ipusuari != "") $hostusuari = gethostbyaddr($ipusuari); $fp = fopen("fitxer.txt", "a+"); fwrite($fp, date("Ymd G:i:s") . "\t" . $_SERVER{'REMOTE_ADDR'} . "\t" . $_SERVER{'HTTP_X_FORWARDED_FOR'} . "\t" . $hostusuari . "\t" . $_SERVER{'DOCUMENT_ROOT'} . "\t" . $_SERVER{'REQUEST_URI'} . "\t" . $_SERVER{'REDIRECT_URL'} . "\t" . $info_usuari . "\n"); fclose($fp);