/** * @param string $encoding */ protected function __construct($encoding) { $this->encoding = (string) $encoding; if (!isset(self::$HAS_ICONV_EXTENSION) || !isset(self::$HAS_MULTIBYTE_EXTENSION)) { if (false !== (self::$HAS_ICONV_EXTENSION = extension_loaded('iconv'))) { self::$STRLEN_FUNCTION_NAME = 'iconv_strlen'; } else { if (false !== (self::$HAS_MULTIBYTE_EXTENSION = extension_loaded('mbstring'))) { self::$STRLEN_FUNCTION_NAME = 'mb_strlen'; } } } }