Symfony\Polyfill\Mbstring

Mbstring::mb_detect_encoding │ public static │ CF7 1.0

Метод класса: Mbstring{}

Хуков нет.

Возвращает

null. Ничего (null).

Использование

$result = Mbstring::mb_detect_encoding( $str, $encodingList, $strict );
$str(обязательный)
.
$encodingList
.
По умолчанию: null
$strict
.
По умолчанию: false

Код Mbstring::mb_detect_encoding() CF7 6.2.4.1

public static function mb_detect_encoding($str, $encodingList = null, $strict = false)
{
    if (null === $encodingList) {
        $encodingList = self::$encodingList;
    } else {
        if (!\is_array($encodingList)) {
            $encodingList = array_map('trim', explode(',', $encodingList));
        }
        $encodingList = array_map('strtoupper', $encodingList);
    }

    foreach ($encodingList as $enc) {
        switch ($enc) {
            case 'ASCII':
                if (!preg_match('/[\x80-\xFF]/', $str)) {
                    return $enc;
                }
                break;

            case 'UTF8':
            case 'UTF-8':
                if (preg_match('//u', $str)) {
                    return 'UTF-8';
                }
                break;

            default:
                if (0 === strncmp($enc, 'ISO-8859-', 9)) {
                    return $enc;
                }
        }
    }

    return false;
}