Как перевернуть строку задом на перёд на PHP

Форум для тех кто начинает осваивать язык php.
Аватара пользователя
Slash
Администратор
Сообщения: 2029
Поблагодарили: 62 раза

Как перевернуть строку задом на перёд на PHP

Сообщение Slash » Вс окт 09, 2016 8:51 am

В PHP есть функция strrev, чье предназначение переворачивать строку задом на перед. Пример:

Код: Выделить всё

$value = 'Leo Tolstoy';
echo strrev($value); 

На экране мы увидим:
yotsloT oeL

Вы конечно не могли не заметить, что текст написан латинскими символами, если написать текст кириллицей:

Код: Выделить всё

$value = 'Лев Николаевич Толстой';
echo strrev($value);

То мы получим совсем не то, что ожидается:
�оЂсѻоТ� �ѸвеалокиН� �еЛ�

Для переворачивания строки написанной кириллическими символами в PHP не функции, по крайней мере я не нашел. Я решил немного поэкспериментировать и вот, что получилось (код прокомментировал):

Код: Выделить всё

$value = 'Лев Николаевич Толстой';

$conversely = null;              // Создаем переменную
$count      = mb_strlen($value); // Считаем количество символов в строке

for ($i = 1; $i <= $count; $i++) // Запускаем цикл
{
    $conversely .= mb_substr($value, -$i, 1); // Добавляем по одному символу с конца строки
}

echo $conversely; // Выводим результат на экран  

Результат:
йотслоТ чивеалокиН веЛ

Спасибо за внимание.
Надеюсь, данная информация была Вам полезна.
Реклама

Вернуться в «PHP»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость