wpseek.com
Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren
wp_check_invalid_utf8 › WordPress Function
Seit2.8.0
Veraltetn/v
› wp_check_invalid_utf8 ( $text, $strip = false )
Parameter: (2) |
|
Gibt zurück: |
|
Definiert in: |
|
Codex: |
Checks for invalid UTF8 in a string.
Ähnliche Funktionen: wp_opcache_invalidate, wp_cache_init, wp_check_locked_posts, wp_checkdate, wp_check_filetype_and_ext
Quellcode
function wp_check_invalid_utf8( $text, $strip = false ) { $text = (string) $text; if ( 0 === strlen( $text ) ) { 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 = is_utf8_charset(); } if ( ! $is_utf8 ) { return $text; } // 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 $text; } // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged -- preg_match fails when it encounters invalid UTF8 in $text. if ( 1 === @preg_match( '/^./us', $text ) ) { return $text; } // Attempt to strip the bad chars if requested (not recommended). if ( $strip && function_exists( 'iconv' ) ) { return iconv( 'utf-8', 'utf-8', $text ); } return ''; }