<?php
/*
Дан текст состоящий из нескольких строк, вывести его вертикально
*/
error_reporting(-1);
mb_internal_encoding('UTF-8');
$text =
"Дым табачный воздух выел.
Комната —
глава в крученыховском аде.
Вспомни —
за этим окном
впервые
руки твои, исступлённый, гладил.
Сегодня сидишь вот,
сердце в железе.
День ещё —
выгонишь,
может быть, изругав.
В мутной передней долго не влезет
сломанная дрожью рука в рукав.";
$sentences = preg_split('/\r\n/iu', $text);
$maxLengthSentence = 0;
/* Определение самой длинной строки в тексте */
foreach ($sentences as $sentence) {
$lenSen = mb_strlen($sentence);
if ($lenSen >= $maxLengthSentence) {
$maxLengthSentence = $lenSen;
}
}
for ($i = 0; $i < $maxLengthSentence; $i ++) {
for ($j = 0; $j < count($sentences); $j ++) {
$char = mb_substr($sentences[$j], $i, 1);
if ($char == TRUE) {
echo "$char";
} else {
echo " ";
}
echo " | ";
}
echo "\n";
}
Д |
ы |
м |
|
т |
а |
б |
а |
ч |
н |
ы |
й |
|
в |
о |
з |
д |
у |
х |
|
в |
ы |
е |
л |
. |
|
К |
о |
м |
н |
а |
т |
а |
|
— |
|
г |
л |
а |
в |
а |
|
в |
|
к |
р |
у |
ч |
е |
н |
ы |
х |
о |
в |
с |
к |
о |
м |
|
а |
д |
е |
. |
|
В |
с |
п |
о |
м |
н |
и |
|
— |
|
з |
а |
|
э |
т |
и |
м |
|
о |
к |
н |
о |
м |
|
в |
п |
е |
р |
в |
ы |
е |
|
р |
у |
к |
и |
|
т |
в |
о |
и |
, |
|
и |
с |
с |
т |
у |
п |
л |
ё |
н |
н |
ы |
й |
, |
|
г |
л |
а |
д |
и |
л |
. |
|
С |
е |
г |
о |
д |
н |
я |
|
с |
и |
д |
и |
ш |
ь |
|
в |
о |
т |
, |
|
с |
е |
р |
д |
ц |
е |
|
в |
|
ж |
е |
л |
е |
з |
е |
. |
|
Д |
е |
н |
ь |
|
е |
щ |
ё |
|
— |
|
в |
ы |
г |
о |
н |
и |
ш |
ь |
, |
|
м |
о |
ж |
е |
т |
|
б |
ы |
т |
ь |
, |
|
и |
з |
р |
у |
г |
а |
в |
. |
|
В |
|
м |
у |
т |
н |
о |
й |
|
п |
е |
р |
е |
д |
н |
е |
й |
|
д |
о |
л |
г |
о |
|
н |
е |
|
в |
л |
е |
з |
е |
т |
|
с |
л |
о |
м |
а |
н |
н |
а |
я |
|
д |
р |
о |
ж |
ь |
ю |
|
р |
у |
к |
а |
|
в |
|
р |
у |
к |
а |
в |
. |