mb_internal_encoding

(PHP 4 >= 4.0.6, PHP 5)

mb_internal_encodingУстановка/получение внутренней кодировки скрипта

Описание

mixed mb_internal_encoding ([ string $encoding = mb_internal_encoding() ] )

Установка/получение внутренней кодировки скрипта.

Список параметров

encoding

encoding - это имя кодировки, в которую будут преобразовываться входные данные HTTP запроса, из которой будет конвертироваться HTTP вывод, а также это кодировка по умолчанию для всех функций работающих со строками, определенными в модуле mbstring.

Возвращаемые значения

Если аргумент encoding задан, то Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки. Если аргумент encoding опущен, будет возвращено имя текущей внутренней кодировки.

Примеры

Пример #1 Пример использования mb_internal_encoding()

<?php
/* Установка внутренней кодировки в UTF-8 */
mb_internal_encoding("UTF-8");

/* Вывод на экран текущей внутренней кодировки */
echo mb_internal_encoding();
?>

Смотрите также

  • mb_http_input() - Определение кодировки символов входных данных HTTP-запроса
  • mb_http_output() - Установка/получение кодировки символов HTTP вывода
  • mb_detect_order() - Установка/получение списка кодировок для механизмов определения кодировки

Коментарии

Be aware that the strings in your source files must match the encoding you specify by mb_internal_encoding.  It appears the Parser loads raw bytes from the file and refers to its internal encoding to determine their actual encoding.

To demonstrate, the following outputs as espected when the /source/ file is Latin-1 encoded:

<?php
    mb_internal_encoding
("iso-8859-1");
   
mb_http_output"UTF-8" );
   
ob_start("mb_output_handler");

    echo 
"???<br/>";

   
?>???

Now, a typical use of mb_internal_encoding is shown as follows.  Make the change to "utf-8" but leave the /source/ file encoding unchanged:

<?php
    mb_internal_encoding
("UTF-8");
   
mb_http_output"UTF-8" );
   
ob_start("mb_output_handler");

    echo 
"???<br/>";

   
?>???

The output will just show the <br/> tag and no text.

Save the file as UTF-8 encoding and then the results will be as expected.
2005-05-27 02:58:39
http://php5.kiev.ua/manual/ru/function.mb-internal-encoding.html
Автор:
Especially when writing PHP scripts for use on different servers, it is a very good idea to explicitly set the internal encoding somewhere on top of every document served, e.g.

mb_internal_encoding("UTF-8");

This, in combination with mysql-statement "SET NAMES 'utf8'", will save a lot of debugging trouble. 

Also, use the multi-byte string functions instead of the ones you may be used to, e.g. mb_strlen() instead of strlen(), etc.
2006-05-25 03:52:29
http://php5.kiev.ua/manual/ru/function.mb-internal-encoding.html
In response to mortoray at ecircle-ag dot com:

The characters display fine as long as you set the Encoding to something more "Latin 1" compatible (i.e. US-ACSII, ISO-8859-1, ISO-8859-1, or  Windows 1252). PHP.net auto-detects to UTF-8
2007-05-17 11:55:22
http://php5.kiev.ua/manual/ru/function.mb-internal-encoding.html
Автор:
Note that mb_internal_encoding is not necessary in PHP 5.6
2015-05-31 22:49:58
http://php5.kiev.ua/manual/ru/function.mb-internal-encoding.html
all together 

<?php
// ------------------------------------------------------------ 

header('Content-Type: text/html; charset=UTF-8');

mb_internal_encoding('UTF-8'); 
mb_http_output('UTF-8'); 
mb_http_input('UTF-8'); 
mb_regex_encoding('UTF-8'); 

// ------------------------------------------------------------ 
?>
2015-09-16 15:14:10
http://php5.kiev.ua/manual/ru/function.mb-internal-encoding.html

    Поддержать сайт на родительском проекте КГБ