Компьютеры Программирование substr и кириллица в PHP

substr и кириллица в PHP

substr и кириллица в PHP

У php функции substr довольно странное поведение при работе со строками в кириллице на UTF-8.

К примеру, если есть 2 переменные

$name_1 = "Вася";
$name_2 = "Vasya";

То если мы применим к этим строкам функцию substr, то получим очень интересный результат. Пусть мы хотим получить 1ый символ каждой из строк. Мы ожидаем, что это будут "В" и "V". Однако у PHP на это другой взгляд.

echo substr($name_1, 0, 1); // увидим "?" (краказябру)
echo substr($name_2, 0, 1); // увидим "V"

Дело в том, что для работы с кириллицей на UTF-8 требуется использоваться аналог функции substr - функцию mb_substr.

echo mb_substr($name_1, 0, 1); // увидим "В"
echo mb_substr($name_2, 0, 1); // увидим "V"
 

Случайная новость

Чётвёртая производная синуса и косинуса

Вообще говоря, вычисление производной - чисто математическая штука, однако иногда подобный пример на вычисление чётвёртой производной синуса или косинуса удобно с интересной целью дать человеку. С какой? Читайте дальше.

Подробнее ...

Материал о ПК

Маленький принтер для смартфона

Очень интересное устройство - маленький принтер, позволяющий печатать на небольших листиках прямо с вашего iPhone или Android телефона.

Подробнее ...


Нажимай!

Кто на сайте

Сейчас 7 гостей онлайн

Голосуй

Используете ли вы плёнку на сенсорных экранах?
 

Valid XHTML 1.0 Transitional Читать в Яндекс.Ленте