При получение первого символа, получаю знак вопроса

Если быть точнее, то символ выглядит именно так �.

То есть задача простая, получить у имени первый символ.

$a = 'Дима';
echo $a[0];

Пробовал через функции, вдруг так лучше, подумал я. Использовал substr, но не помогло.

Именно имя полностью, без обрезки. Будет выводиться корректно. Но получая первый символ - не работает.

В шапке стоит мета тег.

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

Бд также - utf8_general_ci.

Пробовал добавлять в php.

header ("Content-Type: text/html; charset=utf-8");

Но также результатов не дало. И при этом если идут английские буквы. То работает правильно.


Ответы (1 шт):

Автор решения: HTMLProgrammer

скорее всего, это из-за того, что русские символы кодируются двумя байтами, а php по дефолту работает как с однобайтовой кодировкой. Попробуйте: echo mb_substr($a, 0, 1); PS В PHP должен быть установлен модуль mbstring

→ Ссылка