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

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

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

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

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

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

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

speed-compare

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

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

Создание файла на Google Drive через API

Ноябрь 10, 2023 г.

Работа с API гугл - это ещё та головоломка, тут переплетены и вечно обновляемые версии API, не прозрачные процедуры авторизации и запутанная консоль разработчика. ...

Читать

Генератор случайной строки в одну строку кода на PHP

Ноябрь 21, 2018 г.

Задача генерации случайной строки возникает часто в алгоритмах связанных с безопасностью. Начиная с версии PHP 5.3, стала доступна функция [crayon-6ad0a69f78ef8132653824/] которая позволяет генерировать цепочку псевдослучайных байтов произвольной длины. ...

Читать

php - получить первый день следующего месяца

Ноябрь 19, 2019 г.

При создании расписаний, календарей, и т.п. могут возникать задачи вроде - получить timestamp первого дня этого месяца, или последнего дня следующего и т.п. В лоб это решается вот так: [crayon-6ad0a69f78ffe949574556/] Со следующим месяцем ...

Читать

Как получить HTTP код ответа удаленного веб-сервера из PHP?

Июнь 23, 2018 г.

Когда требуется получить HTTP код для заданной URL, то вы наверняка воспользуетесь PHP функцией get_headers($url). Дальше я расскажу о разных подводных ...

Читать
 

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

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



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

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

  1. Валерий:

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

  2. Ильдар:

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