PHP 8ПровереноПрактика

Строки 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 — структурный источник, без внешней ссылки

Последняя содержательная проверка: . Автор-разработчик Михаил Каржин. Методика качества контента.

Данные этого сервиса

Настройки cookie и локальных данных

Аналитика

Текущий статус: не выбран. До согласия обе аналитические системы не загружаются.

Локальные данные

Удаление затрагивает только ключи PHP-сервиса в этом браузере и требует подтверждения.

Политики

Политика конфиденциальности · Политика использования файлов cookie