Попытка заменить только первое вхождение строки приводит к ошибке - PullRequest
1 голос
/ 29 марта 2020

PHP7

Код:

$slug = '1196';
$id = '1';
str_replace($id, '', $slug, 1);

Моя цель - заменить первый экземпляр '1', но я получаю следующее сообщение об ошибке:

Неустранимая ошибка: только переменные могут передаваться по ссылке

В руководстве PHP написано:

str_replace (смешанный поиск $, смешанный обмен $, смешанный $ subject [, int & $ count]): смешанный

Что я делаю не так?

1 Ответ

2 голосов
/ 29 марта 2020

Четвертый параметр - это переменная, которая будет содержать количество замен. Это не предел для количества замен, которые вы хотите произвести.

В случае принятия будет установлено количество выполненных замен.

https://www.php.net/manual/en/function.preg-replace.php имеет параметр limit. например,

$slug = '1196';
$id = '1';
echo preg_replace('/' . $id . '/', '', $slug, 1);

https://3v4l.org/VrTcg

...