Znak ‚+‘ v prvním argumentu funkce Strings::replace

koubi
Člen | 47
+
0
-

Ahoj, potřeboval bych pomoct. Používám nahrazování určitých řetězců pomocí funkce Strings::replace, ale nahrazení neproběhne, pokud je v prvním argumentu (řetězci) funkce třeba znak ‚+‘. Poradí někdo, jak PHPko donutit znak v daném řetězci ignorovat?

h4kuna
Backer | 740
+
0
-

Nějaký příklad co to má dělat a neudělá?

koubi
Člen | 47
+
0
-

h4kuna napsal(a):

Nějaký příklad co to má dělat a neudělá?

Ano, potřebuji v textu řetězec

<div>La Roche-Posay Lipikar Baume AP+</div>

nahradit něčím jiným. Vše mi funguje, ale u produktu, kde je + (tedy hádám speciální znak), tak k tomu nahrazení nedojde.

Editoval koubi (9. 11. 2018 15:53)

h4kuna
Backer | 740
+
+2
-

Pokud pattern je ten html fragment tak ho musíš prohnat skrze preg_quote

echo preg_quote('<div>La Roche-Posay Lipikar Baume AP+</div>');

A pokud nepoužíváš nic speciálního, tak by mohl stačit obyčejný str_replace.

Editoval h4kuna (9. 11. 2018 17:46)

koubi
Člen | 47
+
0
-

h4kuna napsal(a):

Pokud pattern je ten html fragment tak ho musíš prohnat skrze preg_quote

echo preg_quote('<div>La Roche-Posay Lipikar Baume AP+</div>');

A pokud nepoužíváš nic speciálního, tak by mohl stačit obyčejný str_replace?

Super, funguje. Děkuji ;)

CZechBoY
Člen | 3608
+
0
-

Pokud nepotřebuješ nahrazení pomocí regulárů tak by mělo stačit str_replace.