Re: Problems with matrix

From: Date: Wed, 29 Aug 2007 03:58:29 +0000
Subject: Re: Problems with matrix
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-261437@lists.php.net to get a copy of this message
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

« previous php.general (#261437) next »