Hi all, On 15 March 2011 09:35, Nick Pope <p...@nickpope.me.uk> wrote: > Hi Sebastian, > > Since Etienne brought it up, would it not also make sense for you to > implement countWords() and countBytes()?
For countBytes() how is that different from SplFileInfo's getSize() ? As for countWords() and the others, I think this crosses the line (in my view) over what a "File Object" should provide. > > Also, unicode issues aside, it might still be nice to implement > countChars(). > > And finally, so that it provides all most of the functionality of the GNU wc > program, there could also be getMaxLineLength(). This would need a > different name however as this method would be to count the longest line of > the file rather than indicate the maximum length of a line to read as the > current SplFileObject::getMaxLineLen() method does. > > Just my thoughts, > > Nick > > > On 14/03/11 22:24, Sebastian Marek wrote: >> >> Hello, >> >> That makes perfect sense. I have raised a feature request and have >> attached >> a patch containing both countLines() method implementation and phpt tests. Having not looked at the implementation yet, I have no comments on the patch itself. However, I would prefer a "get" prefixed method name, getLineCount() or similar. >> >> thx >> >> On Sun, Mar 13, 2011 at 9:39 PM, Etienne Kneuss<col...@php.net> wrote: >> >>> On Mar 11 23:22:04, Sebastian Marek wrote: >>>> >>>> Hi, >>>> >>>> I have recently used SplFileObject to work with files. I was lacking a >>> >>> bit >>>> >>>> of functionality in there regarding counting number of lines in a given >>>> file. Although I could just load contents of the file to an array and >>> >>> check >>>> >>>> it size, I thought it would be nice to have SplFileObject Countable. >>>> >>>> Here is an example implementation I made tonight that seems to work well >>> >>> - >>>> >>>> https://gist.github.com/866767 . Is it something you think would be >>> >>> worth >>>> >>>> adding to the existing SplFileObject? Is the implementation any good? I >>>> reused some of the existing logic to avoid breaking >>> >>> 'spl_filesystem_object' >>>> >>>> internal integrity, but maybe it would make sense to make it work with >>> >>> the >>>> >>>> stream itself. >>> >>> In my oppinion, it does not make sense to implement countable for this >>> use. Countable should be implemented on classes where calling count() on >>> them is not ambiguous, i.e. the size of a collection. >>> >>> There is no reason why count() on a file should be the number of lines, >>> why not words, or bytes? >>> >>> I'd however be happy with a new countLines() method. >>> >>> Best, >>> >>>> >>>> If it's fine I can write some unit tests to cover this and then submit a >>>> complete patch. >>>> >>>> Regards >>>> -- >>>> Sebastian Marek >>>> proo...@gmail.com >>>> >>>> Follow me online at: >>>> Blog: http://criticallog.thornet.net/ >>>> Twitter: http://twitter.com/proofek >>>> Linkedin: http://uk.linkedin.com/in/sebastianmarek >>>> Ohloh: http://www.ohloh.net/accounts/proofek >>>> <http://twitter.com/proofek> >>> >> >> >> > > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php