Строки PHP — последовательности байтов и правила работы с текстом
Строка PHP хранит последовательность байтов; смысл кодировки задаёт приложение и выбранная операция.
$message = 'PHP 8.4';Байты и текст
PHP-строка не содержит встроенной метки кодировки. ASCII и UTF-8 удобно сосуществуют, но длина в байтах не равна числу пользовательских символов.
Литералы
Одинарные кавычки выполняют минимум интерполяции. Двойные кавычки обрабатывают escape-последовательности и переменные; сложные выражения лучше формировать явно.
Длина и фрагменты
<?php
$text = 'Привет';
echo strlen($text); // байты
echo mb_strlen($text, 'UTF-8'); // кодовые точкиБезопасный вывод
Экранирование зависит от контекста: HTML-текст, атрибут, URL, JavaScript и SQL требуют разных механизмов. Универсальной функции «очистить строку» нет.
Сравнение
Для предсказуемого контракта используйте строгое сравнение. Лингвистическую сортировку и изменение регистра выполняйте средствами, учитывающими локаль и Unicode.
Границы
Добавляйте тесты для пустой строки, кириллицы, emoji, combining mark, нулевого байта и некорректной последовательности из внешнего источника.
Связанные материалы
Источники и проверка
- PHP Documentation Group — структурный источник, без внешней ссылки
Последняя содержательная проверка: . Автор-разработчик Михаил Каржин. Методика качества контента.