Paramètres

$string

(string) (Requis) Le texte à vérifier.

$strip

(bool) (Optionnel) Si $strip vaut true, les caractères invalides au format UTF-8 seront retirés.

Valeur par défaut : false

Retourne

(string) Le texte vérifié.

Structure de la fonction wp_check_invalid_utf8()

Définie dans le fichier wp-includes/formatting.php à la ligne 1097 :

function wp_check_invalid_utf8( $string, $strip = false ) {
    $string = (string) $string;

    if ( 0 === strlen( $string ) ) {
        return '';
    }

    // Store the site charset as a static to avoid multiple calls to get_option().
    static $is_utf8 = null;
    if ( ! isset( $is_utf8 ) ) {
        $is_utf8 = in_array( get_option( 'blog_charset' ), array( 'utf8', 'utf-8', 'UTF8', 'UTF-8' ), true );
    }
    if ( ! $is_utf8 ) {
        return $string;
    }

    // Check for support for utf8 in the installed PCRE library once and store the result in a static.
    static $utf8_pcre = null;
    if ( ! isset( $utf8_pcre ) ) {
        // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
        $utf8_pcre = @preg_match( '/^./u', 'a' );
    }
    // We can't demand utf8 in the PCRE installation, so just return the string in those cases.
    if ( ! $utf8_pcre ) {
        return $string;
    }

    // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged -- preg_match fails when it encounters invalid UTF8 in $string.
    if ( 1 === @preg_match( '/^./us', $string ) ) {
        return $string;
    }

    // Attempt to strip the bad chars if requested (not recommended).
    if ( $strip && function_exists( 'iconv' ) ) {
        return iconv( 'utf-8', 'utf-8', $string );
    }

    return '';
}

Fonction utilisée par wp_check_invalid_utf8()

get_option()

Retourne une valeur d'option en fonction de son nom.

Où trouver la fonction wp_check_invalid_utf8() dans le CMS Wordpress

Sources

Codex Wordpress : wp_check_invalid_utf8()

Autres fonctions dans le même fichier : wp-includes/formatting.php

Retour