note 41665 deleted from function.fgets by nlopess

From: Date: Mon, 19 Apr 2004 13:36:10 +0000
Subject: note 41665 deleted from function.fgets by nlopess
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-68329@lists.php.net to get a copy of this message
Note Submitter: ---- function to get one line <? function fget_line(& $fp,$length=1024,$debug = 0){ $old_point=ftell($fp);$buffer="";$pos=0; if ($debug>0) echo "BEGIN ftell->$old_point, buffer_length=$length\n"; // Linha UNIX => 10 // Linha WIN => 10,13 // Linha MAC => 13,10 while (true){ $buffer.=fread ($fp, $length); $pos=strpos($buffer,chr(10)); if ($pos>0){ if (substr($buffer,$pos-1,1)==chr(13)){ // linha WIN if ($debug>1) echo "***** WIN Line *****\n"; $buffer=substr($buffer,0,$pos-1);$pos++; }elseif (substr($buffer,$pos+1,1)==chr(10)){ // linha MAC if ($debug>1) echo "***** MAC Line *****\n"; $buffer=substr($buffer,0,$pos);$pos+=2; }else{ if ($debug>1) echo "***** UNIX Line *****\n"; $buffer=substr($buffer,0,$pos);$pos++; } break; } if (feof($fp)){ if ($debug>1) echo "***** No Line *****\n"; $pos=-1; break; } $pos=0; } if ($pos==-1) fseek($fp,0,SEEK_END); else fseek($fp,$old_point+$pos,SEEK_SET); $new_point=ftell($fp); if ($debug>2) echo "BUFFER length->".strlen($buffer)."\n$buffer\n"; if ($debug>0) echo "*END* ftell->$new_point\n"; return($buffer); } ?>

« previous php.notes (#68329) next »