|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #24784 str_replace count paramater only counts replacements when strlen > 1
Submitted: 2003-07-23 21:14 UTC Modified: 2003-07-24 20:06 UTC
From: philip at cornado dot com Assigned: pollita (profile)
Status: Closed Package: Strings related
PHP Version: 5CVS-2003-07-23 (dev) OS: linux
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
Solve the problem:
49 - 20 = ?
Subscribe to this entry?

 [2003-07-23 21:14 UTC] philip at cornado dot com
str_[i]replace() has a count parameter that returns a variable (by reference) with a count of replacements.  This is not counting when the search string is one character in length.

Reproduce code:
$count = 0;
$str = str_replace('a', '', 'apples are good', $count);

echo $count;

Expected result:


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2003-07-23 21:23 UTC]
Actual result is 0.  The bug database didn't allow 0 as an actual or expected result value, but does now :)
 [2003-07-24 08:07 UTC]
Sara, you added it, fix it. :)

 [2003-07-24 20:06 UTC]
This bug has been fixed in CVS.

In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at
In case this was a documentation problem, the fix will show up soon at

In case this was a website problem, the change will show
up on the site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.

PHP Copyright © 2001-2023 The PHP Group
All rights reserved.
Last updated: Fri Sep 29 16:01:25 2023 UTC