Разбить строку на буквы в PHP

Это задача — классика алгоритмов. В каждом языке программирования есть свои особенности.

Для паскаля, к примеру, строка — это массив символов, потому можно сказать, что задача решена уже по определению. Для PHP один из вариантов решения задачи можно найти в документации — откройте описание функции preg_split().

Этот пример не работает для UTF-8 символов, но это легко исправить:

Изящное и быстродействующее решение, несмотря на использование функции, работающей с регулярным выражением.  Назовем его Алгоритм 1.

Я сравнивал быстродействие вот с такой конструкцией, использующей функции работы с много-байтовыми строками (пусть это будет Алгоритм 2):

Для коротких строк (у меня в тестах до 40-45 символов) алгоритм 2 выигрывает немного в быстродействии. Потом пальму первенства выхватывает алгоритм 1.

speed-compare

По оси OХ — длина строки (в символах), по оси OY — время вычисления (в секундах).

Мало букафф? Читайте есчо !

Как пользоваться flock()?

Март 24, 2017 г.

Если вы решаете задачу конкурентного доступа к файлу (или какому то другому ресурсу) в PHP, и решили использовать flock() для этой цели, то вам понадобится верно представлять как работает механизм блокировки. Представим себе, что есть разные программные ...

Читать

Определить город по IP адресу

Май 4, 2017 г.

Писал ранее об API ipinfo.io. Сервис позволяет вытащить как гео координаты, так и названия города, региона, страны. Единственный недостаток - информация на английском языке. В данной статье рассмотрим пару примеров использования сервиса. Обращение ...

Читать

Чтение даты-времени из строки

Февраль 27, 2019 г.

Это частая задача возникает при чтении логов, пользовательских данных и .т.п. PHP даёт пару отличных инструментов, для её решения. Функция strtotime() Эта функция с довольно сложным функционалом, пытается определить не только формат пользовательского ...

Читать

Валидатор ip адреса на PHP

Ноябрь 13, 2015 г.

Пример хелпера-валидатора на PHP для проверки формата ip адреса. [crayon-6a27c9a47f2f4740181815/] Функция проверяет является ли формально строка ip-адресом по протоколам ipv4 или ipv6. Возвращает булево значение. Возможно применение этого кода ...

Читать
 

Комментарии к «Разбить строку на буквы в PHP»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий:

Много комментариев в “Разбить строку на буквы в PHP”

  1. Валерий:

    Спасибо!
    Кратко и понятно.

  2. Ильдар:

    Пример для UTF-8 вызывает ошибку 500, не знаю как это объяснить, там нет пробелов при просмотре скрытых символов, если их добавить, то работает.