PHP - nahrazení textu s českou diakritikou rubrika: Programování: PHP

4 pilif
položil/-a 2.9.2014

Zdravím ve spolek,
pokouším se nahradit slovo "pokaždé" v textu "tady je pokaždé nějaký problém".
Požívám na to tento kód:

$string = "tady je pokaždé nějaký problém";
$txt = preg_replace("/pokaždé/","xxx", $string);

Bohužel k nahrazení nikdy nedojde. Pokud zkusím jakékoliv jiné slovo bez diakritiky, tak je to OK.
Zkoušel jsem používat také modifikátor "u".
Texty jsou v UTF-8 - jde vlastně o texty vytažené přes "imap" ze schránky a pokus vyčistit zprávu a předmět od určitého textu.
Zkoušel jsem i alternativu s pomocí "mb_ereg...", ale se stejným výsledkem.

Používám PHP 5.4.27

Napadá Vás v čem mám problém.
Díky

odkaz
6 Marekzprahy
odpověděl/-a 2.9.2014

U funkce mb_regex_encoding je v dokumentaci docela zajímavá poznámka:
Default encoding is changed to UTF-8. It was EUC-JP Previously.

Zkuste nastavit UTF-8 kódování přes funkci mb_regex_encoding a použijte mb_ereg_replace.

(jinak zvážil bych použití funkce str_replace, pokud jde skutečně jen o jednoduché nahrazování textu)

Pro zobrazení všech 7 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.