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

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

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

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

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

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

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

speed-compare

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

Написать комментарий

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

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

Ноябрь 13, 2015 г.

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

Читать

Работаем с датами широкого диапазона в PHP

Январь 28, 2016 г.

Многие не задумываются при работе в PHP со стандартными функциями даты-времени о диапазоне их применимости (date(), time(), mktime() и т.п). Так мы можем скоро столкнуться с проблемой, подобная которой случалась уже раньше - "ошибка 2000". Я прекрасно ...

Читать

 

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

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



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

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

  1. Валерий:

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

  2. Ильдар:

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