I mentioned a similar inconsistency of range() parameters in the past
and pointed out a possible BC breaking issue raised by your recent patch
on array.c in HEAD.

http://news.php.net/article.php?group=php.dev&article=91489
http://news.php.net/article.php?group=php.dev&article=92910

I meant no tricks by is_numeric_string() were needed and
the passed string values should always be regarded as a single character,
just as it was.

Moriyoshi 

On Sun, Jan 05, 2003 at 01:40:31PM -0500, Ilia A. wrote:
> While converting the functions inside string.c to the new parameter parsing 
> API and doing some general cleanup, I've come across an interesting 
> 'feature'.
> 
> Three string functions: stristr(), strstr() and strpos() have peculiar way of 
> handling non string values passed as 'needle'. Instead of converting the 
> needle to a string they instead convert it to an integer and search for a 
> character equivalent to that integer.
> This behavior causes a problem such as strstr("abc123", 1) returning false 
> rather then returning 123 as one may expect. Because this behavior is not 
> documented, I believe we could safely change it back to the behavior listed 
> in the manual and the one defined in the function's prototype.
> The con of this approach is that it may break scripts that really on the 
> undocumented behavior, therefor I propose that this change would only go into 
> the 4.4/5.0 branch at which point people will expect small behavioral 
> changes.
> 
> Ilia

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to