web-dev-qa-db-fra.com

Méthode pour supprimer tous les caractères accentués d'une chaîne

Dans mon modèle, je reçois du contenu de la recherche d'entrée, je veux juste nettoyer des caractères accentués avant de faire une requête. À Joomla! est-il une méthode pour nettoyer en chaîne les caractères accentués?

Merci d'avance

1
user3533235
use Joomla\CMS\Factory;
....
        $lang = Factory::getLanguage();
        $lang->transliterate($value);
 * This method processes a string and replaces all accented UTF-8 characters by unaccented
 * ASCII-7 "equivalents".

Ou vérifier le code de méthode pour être plus granulaire: bibliothèques/src/langage/language.php

    public function transliterate($string)
    {
        if ($this->transliterator !== null)
        {
            return call_user_func($this->transliterator, $string);
        }

        $string = Transliterate::utf8_latin_to_ascii($string);
        $string = StringHelper::strtolower($string);

        return $string;
    }

Donc tu peux aller avec

$string = Joomla\CMS\Language\Transliterate::utf8_latin_to_ascii($string);
2
AHeavyObject