1 Востаннє редагувалося Betterthanyou (29.01.2015 18:06:30)

Тема: str_replace заміна рядка лише один роз

мені потрібно str_replace(або ін. функція) замінювала лише один раз тобто так  6,123=str_replace("123","6","123,123");
В неї(str_replace) є ще 4 параметр count який виводить кількість замін тому я пробував так

$const=1;
echo str_replace("123","6","123,123",$const),'<br>';

але не виходить, чому ?

2

Re: str_replace заміна рядка лише один роз

Бо читати документацію треба, $const повертає значення;
Використовуйте preg_replace()

Подякували: Betterthanyou1

3

Re: str_replace заміна рядка лише один роз

Chemist-i написав:

Бо читати документацію треба, $const повертає значення;
Використовуйте preg_replace()

preg_replace для регулярних виразів, а мені потрібно для рядків функція

4

Re: str_replace заміна рядка лише один роз

Betterthanyou написав:
Chemist-i написав:

Бо читати документацію треба, $const повертає значення;
Використовуйте preg_replace()

preg_replace для регулярних виразів, а мені потрібно для рядків функція

Що Вам заважає регулярку написати?

5 Востаннє редагувалося Betterthanyou (29.01.2015 18:41:08)

Re: str_replace заміна рядка лише один роз

Chemist-i написав:
Betterthanyou написав:
Chemist-i написав:

Бо читати документацію треба, $const повертає значення;
Використовуйте preg_replace()

preg_replace для регулярних виразів, а мені потрібно для рядків функція

Що Вам заважає регулярку написати?

Бо цей приклад str_replace("123","6","123,123") я написав щоб було більш зрозуміло що я хочу, насправді я роблю скрипт яки створює таблицю істинності, вона вже готово і я її не хочу перероблювати але баг із за str_replace, тут str_replace((¬0ᐱ0),0,(¬0ᐱ0)ᐯ(¬0ᐱ0)) робить дві заміни і все йде шкереберть

Post's attachments

Баг.png 8.31 kb, 179 downloads since 2015-01-29 

6

Re: str_replace заміна рядка лише один роз

Є ще така функція http://php.net/manual/en/function.substr-replace.php

Подякували: Betterthanyou1

7

Re: str_replace заміна рядка лише один роз

шукайте першу позицію через substr , вирізайте і сполучайте в залежності від довжини пошукового рядка.

Подякували: Betterthanyou1

8

Re: str_replace заміна рядка лише один роз

<?php 
$str = preg_replace('/123/','6','123,123',1);
echo $str;
Подякували: Betterthanyou1