PHP ЗНАКИ ВОПРОСА ПРИ ОБРЕЗКЕ СТРОКИ
При работе с PHP, может возникнуть ситуация, когда в результате обрезки строки на экране появляются знаки вопроса вместо символов, не входящих в ASCII. Данную проблему можно решить с помощью использования функций PHP для работы с многобайтовыми строками.
Одной из таких функций является mb_substr(string $str, int $start, [int $length], [string $encoding])
, которая позволяет получить подстроку строки $str, начиная с позиции $start длиной $length символов. В качестве опционального аргумента можно указать кодировку $encoding, которая по умолчанию равна значению константы mb_internal_encoding()
.
Например, для обрезки строки $str до первых 10 символов с учётом многобайтовой кодировки UTF-8, код будет иметь следующий вид:
$str = "Одной из таких функций является mb_substr, которая позволяет получить подстроку строки";
$substr = mb_substr($str, 0, 10, "UTF-8");
echo $substr;
Результат выполнения этого кода будет:
Одной из т
Таким образом, использование функций для работы с многобайтовыми строками позволяет избежать появления знаков вопроса при обрезке строк в PHP.
Изучение PHP для начинающих - Урок #22 - Строковые функции
Решение проблемы с кодировкой символов на сайте (UTF-8). Отображает иероглифы или знаки вопроса
Обрезание строк с помощью функций php
PHP 2023. Основы синтаксиса, переменные, базовые операции PHP
Основы php. Строковые функции
Не бойтесь регулярных выражений. Regex за 20 минут!
Работа со строками в PHP. Обзор топ функций, удаление тегов, экранирование
Функции для работы с символами в PHP - Базовый курс PHP-7
PHP: почему его вечно хоронят, актуально ли его учить и чем он полезен бизнесу. Код и кофе, s4, ep 8
Как исправить? Иероглифы и знаки вопроса вместо русских букв!