Autor Zpráva
T-fon
Profil
    public function createSlug($input) {
        $slug = $input;
        $slug = preg_replace('~[^\\pL0-9_]+~u', '-', $slug);
        $slug = trim($slug, "-");
        $slug = iconv("utf-8", "us-ascii//TRANSLIT", $slug);
        $slug = strtolower($slug);
        $slug = preg_replace('~[^-a-z0-9_]+~', '', $slug);
        return $slug;
    }
Ahoj. Tento kód mi funguje perfektně na localhostu, ale ne na prudukci. Příklad: Starší žena - localhost: starsi-zena, server: star-ena
Netušíte, čím by to mohlo být? Na localhostu mám PHP 7.1, na produkci 7.0.
Keeehi
Profil
Zkusil bych iconv('UTF-8', 'ASCII//TRANSLIT//IGNORE', $s);

Nebo bych použil něco ověřeného. Minimálně na test, zda je to serverem nebo chybou v kódu. Nemusíš z Nette použít nic, stačí okopírovat jen ten kód a změnit to z metod na funkce.
T-fon
Profil
Díky, Nette metoda funguje bez problému.

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: