Basit bir anahtarla 20k - 30k dosya kayıt tutmam gerekiyor: satır başına değer. Başka bir örnek de kullanacağı için dosyayı bir dosyada tutmam gerekiyor. O zaman değerini elde etmek için özel bir anahtar bulmalı ve dosyada bir anahtar: değer yazmalıyım. Aşağıdaki yöntemlerden hangisinin daha hızlı/daha iyi olduğunu veya iyi bir uygulama olduğunu düşündüm. Bir sistem çağrısı kullanarakPHP'de bir dosyayı yazmak ve okumak için sistem çağrılarını kullanmak iyi midir?
$fh = fopen('myfile.txt', 'a') or die("can't open file");
fwrite($fh, 'key:value');
fclose($fh);
ikinci ya sahip file_put_contents
file_put_contents('myfile.txt','key:value',FILE_APPEND);
ve üçüncü: ilk:
dosyaya yazmak için, bunu yapmak için yaklaşık üç yöntemini biliyoruz.
exec("echo key:value >> myfile.txt");
Ve ayrıca, bir satır bir dosyayı okumak ve bulmak için bir yapabilirsiniz: kullanma file_get_contents
$filename = 'info.txt';
$contents = file($filename);
foreach($contents as $line) {
$pos = strpos($line, $key);
}
Ve bir sistem çağrısı ile dosya
kullanma$filename = 'info.txt';
$contents = file_get_contents($filename);
foreach($contents as $line) {
$pos = strpos($line, $key);
}
:
exec("grep $key | wc -l",$result);
Php işlevlerine yapışır. Bu şekilde kodunuz diğer işletim sistemlerine taşınabilir olacak. –