0

PHP 文档substr()说:

如果字符串的长度小于起始字符,则返回 FALSE。

并给出了例子

$rest = substr("abcdef", 4, -4);  // returns false

有趣的是,从 PHP 8.0.0rc1 开始,这似乎不是真的,因为在较新的版本中,该函数返回一个空字符串:

https://3v4l.org/RPU1s

这是 PHP 中的错误还是未记录的更改(或者我误解了什么)?

4

1 回答 1

3

似乎这是 https://php.watch/versions/8.0/substr-out-of-bounds中提到的有意更改

并在这里实施:

https://github.com/php/php-src/pull/6182

于 2020-11-16T09:23:15.537 回答