Re: Getting line count of a text file

From: Date: Wed, 12 Sep 2007 19:46:51 +0000
Subject: Re: Getting line count of a text file
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-262046@lists.php.net to get a copy of this message
On 9/12/07, Wolf <lonewolf@nc.rr.com> wrote: > > $command = escapeshellcmd("cat {$file} | wc -l"); > // Run command and capture results > $count = exec($command); that would work on *nix, but not windows. ---- "Frank J. Schima" <fjs@foraker.com> wrote: > > Hi all, > > > > > > In PHP 5, I'm counting the number of lines in a text file using the > > following code: > > $myfile = file ( '/path/to/myfile.txt'); > > $count = count ($myfile); > > > > However, sometimes it fails with the following error: > > PHP Fatal error: Allowed memory size of xxxx bytes exhausted > (tried > > to allocate 35 bytes) in /path/to/myprogram.php on line 16 > > > > Line 16 is the first line above. > > > > I'm sure there is a better - more memory efficient - way to do this. > > Any suggestions? > > > > > > Thanks! > > Frank Schima > > Foraker Design > > <http://www.foraker.com> > > > > > if you want a cross-platform solution (not that i use windows :)) or you dont want to use exec() or related functions look to the stream functions. they support buffered reading, so theorectically a script could read portions of a file and count lines as it read through the portions. -nathan

« previous php.general (#262046) next »