PHP.mk документација

mb_internal_encoding

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.mb-internal-encoding.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.mb-internal-encoding.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
mb_internal_encoding

Референца за `function.mb-internal-encoding.php` со подобрена типографија и навигација.

function.mb-internal-encoding.php

mb_internal_encoding

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_internal_encodingПостави/земи внатрешна кодировка на знаци

= NULL

mb_internal_encoding(?string $encoding = null): string|bool

Постави/земи ја внатрешната кодировка на знаци

Параметри

encoding

encoding е името на кодировката на знаци што се користи за конверзија на кодировката на знаци на HTTP влез, конверзија на кодировката на знаци на HTTP излез и стандардната кодировка на знаци за функциите на низи дефинирани од модулот mbstring. Треба да забележите дека внатрешната кодировка е сосема различна од онаа за мултибајт регуларни изрази.

Вратени вредности

Враќа encoding е поставено, тогаш враќа true на успех или false при неуспех. Во овој случај, кодировката на знаци за мултибајт регуларни изрази НЕ е променета. Ако encoding е изоставено, тогаш се враќа името на тековната кодировка на знаци.

Errors/Exceptions

Од PHP 8.0.0, а ValueError се фрла ако вредноста на encoding е неважечка кодировка. Пред PHP 8.0.0, а E_WARNING беше емитирано наместо тоа.

Дневник на промени

Верзија = NULL
8.0.0 encoding сега е null.
8.0.0 Сега фрла ValueError if encoding е неважечка кодировка. Претходно а E_WARNING беше емитирано наместо тоа.

Примери

Пример #1 mb_internal_encoding() example

<?php
/* Set internal character encoding to UTF-8 */
mb_internal_encoding("UTF-8");

/* Display current internal character encoding */
echo mb_internal_encoding();
?>

Види Исто така

  • mb_http_input() - Откриј ја кодировката на знаци на HTTP влез
  • mb_http_output() - Постави/земи ја кодировката на знаци на HTTP излез
  • mb_detect_order() - Постави/земи го редоследот за откривање на кодировка на знаци
  • mb_regex_encoding() - Постави/земи ја кодировката на знаци за мултибајт регуларни изрази

Белешки од корисници 5 белешки

Јоаким Крујсвајк
19 години пред
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.
webfav на web dot de
пред 10 години
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'); 

// ------------------------------------------------------------ 
?>
mortoray на ecircle-ag dot com
20 години пред
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.
Анонимен
пред 10 години
Note that mb_internal_encoding is not necessary in PHP 5.6
mdirks на gulfstreamcoach dot com
пред 18 години
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
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.