Я читаю файл, содержащий около 50 тыс. строк, используя функцию file() в Php. Тем не менее, это дает ошибку из памяти, так как содержимое файла хранится в памяти в виде массива. Есть ли другой способ?
Кроме того, длина сохраненных строк является переменной.
Вот код. Также файл 700kB не mB.
private static function readScoreFile($scoreFile)
{
$file = file($scoreFile);
$relations = array();
for($i = 1; $i < count($file); $i++)
{
$relation = explode("\t",trim($file[$i]));
$relation = array(
'pwId_1' => $relation[0],
'pwId_2' => $relation[1],
'score' => $relation[2],
);
if($relation['score'] > 0)
{
$relations[] = $relation;
}
}
unset($file);
return $relations;
}