Установленного расширения php mbstring

Установка

mbstring не входит в список расширений, устанавливаемых по умолчанию. Это значит, что изначально это расширение отключено. Для использования функций этого расширения необходимо явно включить модуль в настройке configure. За дополнительной информацией обращайтесь в раздел Инсталляция.

Следующие настройки относятся к модулю mbstring.

    —enable-mbstring : Включение mbstring функций. Эта настройка необходима для использования mbstring функций. libmbfl необходима для работы mbstring. libmbfl поставляется вместе с mbstring. Если libmbfl уже установлена в системе, то, чтобы использовать именно ее, можно задать настройку —with-libmbfl[=DIR] . В версии PHP 4.3.0 расширение mbstring предоставляет расширенную поддержку кодировок Упрощенного Китайского, Традиционного Китайского, Корейского и Русского языков в дополнение к кодировке Японского языка. Для версий PHP 4.3.3 и ниже, чтобы добавить эту поддержку, необходимо задать одно или несколько значений параметра LANG в настройке —enable-mbstring=LANG ; следующим образом: —enable-mbstring=cn для поддержки Упрощенного Китайского, —enable-mbstring=tw для поддержки Традиционного Китайского, —enable-mbstring=kr для поддержки Корейского, —enable-mbstring=ru для поддержки Русского, и —enable-mbstring=ja для поддержки Японского (по умолчанию). Для включения всех поддерживаемых кодировок используйте настройку —enable-mbstring=all .

Замечание: C версии PHP 4.3.4, все поддерживаемые библиотекой libmbfl кодировки включаются настройкой —enable-mbstring .

Замечание: В версии PHP 4.3.0 настройка —enable-mbstr-enc-trans была исключена и заменена на установку времени выполнения mbstring.encoding_translation. Преобразование кодировок входных символов HTTP включено, когда этой установке задано значение On (значение по умолчанию Off).

Источник

How to enable mbstring in PHP?

It is required to have PHP enabled with mbstring (multi-byte string) support for storing and displaying multi-byte characters in PHPKB software. The installation wizard of the multi-language editions of PHPKB knowledge base software will automatically detect if you have PHP enabled with mbstring support. If it is not enabled, you may get an error that says:

Читайте также:  Running python file on windows

Please refer to the tutorial below on how to enable mbstring on your server.

Why mbstring is required?

When we manipulate (trim, split, splice, etc.) strings encoded in a multi-byte encoding, we need to use special functions since two or more consecutive bytes may represent a single character in such encoding schemes. Otherwise, if we apply a non-multibyte-aware string function to the string, it probably fails to detect the beginning or end of the multibyte character and ends up with a corrupted garbage string that most likely loses its original meaning.

So, mbstring provides multibyte-specific string functions that help us deal with multibyte encodings in PHP. In addition to that, mbstring handles character encoding conversion between the possible encoding pairs. mbstring is designed to handle Unicode-based encodings such as UTF-8 and UCS-2 and many single-byte encodings for convenience.

MBstring Installation

Please note that «mbstring» is a non-default PHP extension. This means it is not enabled by default.

Installation on Linux Server

You can find out if this module is installed or not by looking at the list that is produced by this command

If you don’t have this installed on a Linux machine and if you have installed PHP from yum then run this command as a superuser. The command depends on your operating system.

sudo yum install php-mbstring
This command is true for all Red Hat Linux-based distributions using RPM and the ’yum’ package manager; this includes RHEL, Fedora, CentOS, Mandriva, and Intrinsic Linux, among others.
For Debian, Ubuntu distributions, please use the following command.
sudo apt-get install php-mbstring

After that, you will need to restart your Apache service using the following command:

Installation on Windows Server

If you have access to the php.ini, just remove the semicolon character (;) in front of the line below.

Once you have made the changes, don’t forget to restart your web server for the change to take effect.

Note: PHP extensions are not just enabled from php.ini file. First, you need to install that specific extension, i.e. place its DLL file «php-mbstring.dll» into the «/php/ext/» directory if it is not already present there. When you do that, make sure you have the correct build of DLL file. 32-bit, thread-safe PHP binary, built using VC9 for example, would only work with DLL files built using exact same tools and configuration: 32-bit, using VC9, with thread-safety turned on. And of course PHP API version also needs to match. If it doesn’t, once you restart the web server, you will receive ’Error 500 — Server error’ message.

MBstring Configuration

Below is a sample excerpt from php.ini file which contains the configuration of mbstring variables.

[mbstring]
mbstring.language = all
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = UTF-8
mbstring.substitute_character = none;
mbstring.func_overload = 0
mbstring.strict_encoding = Off

  • Applicable To: Standard (Multi-Language) Edition, Enterprise Multi-Language Edition (MySQL), Enterprise Multi-Language Edition (SQL Server)

35 people found this article helpful what about you?

Источник

Оцените статью