|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #66219 Changes introduced in #62759 produces a BC Break
Submitted: 2013-12-02 18:27 UTC Modified: 2014-07-07 05:45 UTC
From: php dot maks3w at virtualplanets dot net Assigned: stas (profile)
Status: Not a bug Package: intl (PECL)
PHP Version: 5.4.22 OS:
Private report: No CVE-ID: None
 [2013-12-02 18:27 UTC] php dot maks3w at virtualplanets dot net
Before PHP 5.4.18 and 5.5.1 a null or 0 value in the third argument returns the whole string from $start when $start is positive.

Test script:
$value = 'ˆCODE128:Š';
var_dump(grapheme_substr($value, 1));
var_dump(grapheme_substr($value, 1, null));
var_dump(grapheme_substr($value, 1, 0));

Expected result:
string(10) "CODE128:Š"
string(10) "CODE128:Š"
string(10) "CODE128:Š"

Actual result:
string(10) "CODE128:Š"
string(0) ""
string(0) ""


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2013-12-02 18:29 UTC]
-Package: ICONV related +Package: intl -Assigned To: +Assigned To: stas
 [2013-12-02 18:29 UTC]
Stas, since you made the original fix, do you have any thoughts on this? Is it expected behaviour that we should be documenting, or an unexpected side effect of the fix?
 [2014-07-07 05:45 UTC]
-Status: Assigned +Status: Not a bug
 [2014-07-07 05:45 UTC]
Looks like the actual behavior is correct - if you ask for the string of length 0, you get an empty string. Also matches the behavior of substr().
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Wed Apr 17 22:01:26 2024 UTC