Totally agree with you, and just having done the String class, I am appalled at how many different kinds of return values you can get from methods. If that's not bad enough, then PHP will throw a curveball at you with its 'this method may return falsy values'.
That's the kind of thinking I've avoided here, trying to explicitly return a boolean value, or results.
Indeed, PHP desperately needs some standardisation. At least with your string class there'll be no more needle/haystack confusion :)
If I find a bit of free time I'll see if I can contribute anything to this, as while I've all but abandoned PHP, I'd still like to help bring a library like this in to existence :)
Your help would be highly appreciated - there's loads to cover yet, and God knows what other horrors PHP has in store.
As a sidenote, I read somewhere recently that there is some method to the needle/haystack madness. Basically, for strings, its needle/stack, and for arrays its stack/needle. Thought I'd share that.
That's the kind of thinking I've avoided here, trying to explicitly return a boolean value, or results.