Autor Zpráva
Sylar
Profil
Zdravím,
mám takovýto výraz

$cislo = 100;
$var = "200:300;500:400;";
$var = preg_replace("/([0-9]+):([0-9]+);/", "($1_$2)", $var);

A potřeboval bych k číslu, které se zachytí do proměnné $1 přičíst hodnotu, která je v proměnné $cislo. Tzn. aby v proměnná $var po průchodu fcí preg_replace() obsahovala hodnotu (300_300);(600_400); . Lze to nějak udělat? Zkoušel jsem různé způsoby např.:

$var = preg_replace("/([0-9]+):([0-9]+);/", "(($1+$cislo)_$2)", $var);

ale to mi vyhodí ((200+100)_300);((500+100)_400);
Zkoušel jsem to také různě esapovat, ale ani to nepomohlo.
Jan Tvrdík
Profil
Sylar:
Koukni na funkci preg_replace_callback.
Sylar
Profil
Jan Tvrdík:
skvělé, díky moc

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: