Andres Rojas wrote:
Hi all,
I'm new in PHP programming and I have a problem with this script. I need
to read a large file around 2Mb and several lines (28000). All start Ok,
but suddenly the script stop without message error.
<?php
$fichero="62007lg.txt";
$buffer = file($fichero);
$lineas = count($buffer);
foreach($buffer as $linea){
list($day, $month, $year, $hour, $min, $temp, $hum, $dew, $baro,
$wind, $gust, $wdir, $rlastm, $rdai, $rmon, $ryear,
$heat)=sscanf($linea,"%d %d %d %d %d %f %d %f %f %d %d %d %f %f %f %f %f \n");
$mday[]=$day;
$mmonth[]=$month;
$myear[]=$year;
$mhour[]=$hour;
$mmin[]=$min;
$mtemp[]=$temp;
$mhum[]=$hum;
$mdew[]=$dew;
$mbaro[]=$baro;
$mwind[]=$wind;
$mgust[]=$gust;
$mwdir[]=$wdir;
$mrlastm[]=$rlastm;
$mdai[]=$rdai;
$mrmon[]=$rmon;
$mryear[]=$ryear;
$mheat[]=$heat;
echo"$day $month $year $hour $min $temp $hum $dew $baro $wind $gust
$wdir $rlastm $rdai $rmon $ryear $heat <br>";
}
?>
If only I print the variable $buffer all it's ok, but when I try to fill
all the matrix the script doesn't work. If I reduce the number of matrix
only a 3 o 4 it's Ok, but If I increase number of this matrix the script
crash again.
Perhaps it's a problem of memory of server, but my service provider say
me that this is not the problem.
Thank you very much
Andres:
The info is too poor to see what is wrong, maybe you need to review
a error_reporting() php function, o error_reporting php.ini variable i
send you some code:
<?php
error_reporting(E_ALL);
$fichero="62007lg.txt";
$buffer = file($fichero);
$lineas = count($buffer);
foreach($buffer as $linea){
$data = preg_split("/\s+/", trim($linea));
// trim removes all white spaces at the end and the beginning of
the string.
$k = 0;
foreach(array(
'mday', 'mmonth',
'myear', 'mhour',
'mtemp', 'mhum',
'mdew', 'mbaro',
'mwind', 'mgust',
'mwdir', 'mrlastm',
'mrdai', 'mrmon',
'mryear', 'mheat' ) as $var )
{
if(!isset($$var)) $$var = array();
array_push($$var, $data[$k]);
echo $var." => ".$data[$k];
$k++;
}
}
?>
cheers!!
Felipe Alcacibar
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php