<?php
$text =
"Дым табачный воздух выел.
Комната -
глава в крученыховском аде.
Вспомни -
за этим окном
впервые
руки твои, исступлённый, гладил.
Сегодня сидишь вот,
сердце в железе.
День ещё -
выгонишь,
может быть, изругав.
В мутной передней долго не влезет
сломанная дрожью рука в рукав." ;
/* Раскладываем стихотворный текст на куски по символу перевода строки. */
/* Раскладываем массив с кусками текста на несколько массивов со всеми символами в этих кусках текста. */
foreach ( $pieces as $key => $piece ) {
$symbols [ $key ] = preg_split ( '//u' , $piece , 0 , PREG_SPLIT_NO_EMPTY
) ; }
/* Считаем количество символов во всех вложенных массивах в $symbols. */
$countedSymbols = array ( ) ; for ( $i = 0 ; $i <= count ( $symbols ) ; $i ++ ) { $count = @ $symbols [ $i ] ;
}
/* Находим массив с самым большим количеством символов. */
$maxSymbolsLength = max ( $countedSymbols ) ;
/* Сверяем количество символов в других массивах с самым большим массивом, пропускаем через цикл в цикле все массивы, наполняя пробелами те, которые по количеству символов не дотягивают до самого большого массива. */
$space = " " ;
$requiredAmount = "" ;
for ( $x = 0 ; $x < count ( $symbols ) ; $x ++ ) { $requiredAmount = $maxSymbolsLength - count ( $symbols [ $x ] ) ; for ( $y = 0 ; $y < $requiredAmount ; $y ++ ) {
}
}
/* Выводим построчно первые и последующие символы в массиве $symbols. */
$result = "" ;
$cell = "" ;
$verticalLine = " | " ;
$carriageReturn = "\n " ;
for ( $x = 0 ; $x < $maxSymbolsLength ; $x ++ ) {
for ( $y = 0 ; $y < count ( $symbols ) ; $y ++ ) { $cell = $symbols [ $y ] [ $x ] . $verticalLine ;
$result = $result . $cell ;
}
$result = $result . $carriageReturn ;
}
echo $result ;
?>
PD9waHAKCmVycm9yX3JlcG9ydGluZygtMSk7Cm1iX2ludGVybmFsX2VuY29kaW5nKCd1dGYtOCcpOwoKJHRleHQgPQoi0JTRi9C8INGC0LDQsdCw0YfQvdGL0Lkg0LLQvtC30LTRg9GFINCy0YvQtdC7LgrQmtC+0LzQvdCw0YLQsCAtCtCz0LvQsNCy0LAg0LIg0LrRgNGD0YfQtdC90YvRhdC+0LLRgdC60L7QvCDQsNC00LUuCtCS0YHQv9C+0LzQvdC4IC0K0LfQsCDRjdGC0LjQvCDQvtC60L3QvtC8CtCy0L/QtdGA0LLRi9C1CtGA0YPQutC4INGC0LLQvtC4LCDQuNGB0YHRgtGD0L/Qu9GR0L3QvdGL0LksINCz0LvQsNC00LjQuy4K0KHQtdCz0L7QtNC90Y8g0YHQuNC00LjRiNGMINCy0L7RgiwK0YHQtdGA0LTRhtC1INCyINC20LXQu9C10LfQtS4K0JTQtdC90Ywg0LXRidGRIC0K0LLRi9Cz0L7QvdC40YjRjCwK0LzQvtC20LXRgiDQsdGL0YLRjCwg0LjQt9GA0YPQs9Cw0LIuCtCSINC80YPRgtC90L7QuSDQv9C10YDQtdC00L3QtdC5INC00L7Qu9Cz0L4g0L3QtSDQstC70LXQt9C10YIK0YHQu9C+0LzQsNC90L3QsNGPINC00YDQvtC20YzRjiDRgNGD0LrQsCDQsiDRgNGD0LrQsNCyLiI7CgovKiDQoNCw0YHQutC70LDQtNGL0LLQsNC10Lwg0YHRgtC40YXQvtGC0LLQvtGA0L3Ri9C5INGC0LXQutGB0YIg0L3QsCDQutGD0YHQutC4INC/0L4g0YHQuNC80LLQvtC70YMg0L/QtdGA0LXQstC+0LTQsCDRgdGC0YDQvtC60LguICovCiRwaWVjZXMgPSBleHBsb2RlKCJcbiIsICR0ZXh0KTsKCi8qINCg0LDRgdC60LvQsNC00YvQstCw0LXQvCDQvNCw0YHRgdC40LIg0YEg0LrRg9GB0LrQsNC80Lgg0YLQtdC60YHRgtCwINC90LAg0L3QtdGB0LrQvtC70YzQutC+INC80LDRgdGB0LjQstC+0LIg0YHQviDQstGB0LXQvNC4INGB0LjQvNCy0L7Qu9Cw0LzQuCDQsiDRjdGC0LjRhSDQutGD0YHQutCw0YUg0YLQtdC60YHRgtCwLiAqLwokc3ltYm9scyA9IGFycmF5KCk7CmZvcmVhY2goJHBpZWNlcyBhcyAka2V5ID0+ICRwaWVjZSkgewogICAgJHN5bWJvbHNbJGtleV0gPSBwcmVnX3NwbGl0KCcvL3UnLCAkcGllY2UsIDAsIFBSRUdfU1BMSVRfTk9fRU1QVFkpOwp9CgovKiDQodGH0LjRgtCw0LXQvCDQutC+0LvQuNGH0LXRgdGC0LLQviDRgdC40LzQstC+0LvQvtCyINCy0L4g0LLRgdC10YUg0LLQu9C+0LbQtdC90L3Ri9GFINC80LDRgdGB0LjQstCw0YUg0LIgJHN5bWJvbHMuICovCiRjb3VudCA9IGFycmF5KCk7CiRjb3VudGVkU3ltYm9scyA9IGFycmF5KCk7CmZvciAoJGkgPSAwOyAkaSA8PSBjb3VudCgkc3ltYm9scyk7ICRpKyspIHsKCSAkY291bnQgPSBAJHN5bWJvbHNbJGldOwoJICRjb3VudCA9IGNvdW50KCRjb3VudCk7CgkgYXJyYXlfcHVzaCgkY291bnRlZFN5bWJvbHMsICRjb3VudCk7Cn0KCi8qINCd0LDRhdC+0LTQuNC8INC80LDRgdGB0LjQsiDRgSDRgdCw0LzRi9C8INCx0L7Qu9GM0YjQuNC8INC60L7Qu9C40YfQtdGB0YLQstC+0Lwg0YHQuNC80LLQvtC70L7Qsi4gKi8KJG1heFN5bWJvbHNMZW5ndGggPSBtYXgoJGNvdW50ZWRTeW1ib2xzKTsKCi8qINCh0LLQtdGA0Y/QtdC8INC60L7Qu9C40YfQtdGB0YLQstC+INGB0LjQvNCy0L7Qu9C+0LIg0LIg0LTRgNGD0LPQuNGFINC80LDRgdGB0LjQstCw0YUg0YEg0YHQsNC80YvQvCDQsdC+0LvRjNGI0LjQvCDQvNCw0YHRgdC40LLQvtC8LCDQv9GA0L7Qv9GD0YHQutCw0LXQvCDRh9C10YDQtdC3INGG0LjQutC7INCyINGG0LjQutC70LUg0LLRgdC1INC80LDRgdGB0LjQstGLLCDQvdCw0L/QvtC70L3Rj9GPINC/0YDQvtCx0LXQu9Cw0LzQuCDRgtC1LCDQutC+0YLQvtGA0YvQtSDQv9C+INC60L7Qu9C40YfQtdGB0YLQstGDINGB0LjQvNCy0L7Qu9C+0LIg0L3QtSDQtNC+0YLRj9Cz0LjQstCw0Y7RgiDQtNC+INGB0LDQvNC+0LPQviDQsdC+0LvRjNGI0L7Qs9C+INC80LDRgdGB0LjQstCwLiAqLwokc3BhY2UgPSAiICI7CiRyZXF1aXJlZEFtb3VudCA9ICIiOwpmb3IoJHggPSAwOyAkeCA8IGNvdW50KCRzeW1ib2xzKTsgJHgrKykgewogICAgJHJlcXVpcmVkQW1vdW50ID0gJG1heFN5bWJvbHNMZW5ndGggLSBjb3VudCgkc3ltYm9sc1skeF0pOwogICAgZm9yKCR5ID0gMDsgJHkgPCAkcmVxdWlyZWRBbW91bnQ7ICR5KyspIHsKICAgICAgICBhcnJheV9wdXNoKCRzeW1ib2xzWyR4XSwgJHNwYWNlKTsKICAgIH0KfQoKLyog0JLRi9Cy0L7QtNC40Lwg0L/QvtGB0YLRgNC+0YfQvdC+INC/0LXRgNCy0YvQtSDQuCDQv9C+0YHQu9C10LTRg9GO0YnQuNC1INGB0LjQvNCy0L7Qu9GLINCyINC80LDRgdGB0LjQstC1ICRzeW1ib2xzLiAqLwokcmVzdWx0ID0gIiI7CiRjZWxsID0gIiI7CiR2ZXJ0aWNhbExpbmUgPSAiIHwgIjsKJGNhcnJpYWdlUmV0dXJuID0gIlxuIjsKZm9yICgkeCA9IDA7ICR4IDwgJG1heFN5bWJvbHNMZW5ndGg7ICR4KyspIHsKICAgIGZvciAoJHkgPSAwOyAkeSA8IGNvdW50KCRzeW1ib2xzKTsgJHkrKykgewogICAgICAgICRjZWxsID0gJHN5bWJvbHNbJHldWyR4XSAuICR2ZXJ0aWNhbExpbmU7CiAgICAgICAgJHJlc3VsdCA9ICRyZXN1bHQgLiAkY2VsbDsKICAgIH0KICAgICRyZXN1bHQgPSAkcmVzdWx0IC4gJGNhcnJpYWdlUmV0dXJuOwp9CgplY2hvICRyZXN1bHQ7Cgo/Pg==
stdout
Д | К | г | В | з | в | р | С | с | Д | в | м | В | с |
ы | о | л | с | а | п | у | е | е | е | ы | о | | л |
м | м | а | п | | е | к | г | р | н | г | ж | м | о |
| н | в | о | э | р | и | о | д | ь | о | е | у | м |
т | а | а | м | т | в | | д | ц | | н | т | т | а |
а | т | | н | и | ы | т | н | е | е | и | | н | н |
б | а | в | и | м | е | в | я | | щ | ш | б | о | н |
а | | | | | | о | | в | ё | ь | ы | й | а |
ч | - | к | - | о | | и | с | | | , | т | | я |
н | | р | | к | | , | и | ж | - | | ь | п | |
ы | | у | | н | | | д | е | | | , | е | д |
й | | ч | | о | | и | и | л | | | | р | р |
| | е | | м | | с | ш | е | | | и | е | о |
в | | н | | | | с | ь | з | | | з | д | ж |
о | | ы | | | | т | | е | | | р | н | ь |
з | | х | | | | у | в | . | | | у | е | ю |
д | | о | | | | п | о | | | | г | й | |
у | | в | | | | л | т | | | | а | | р |
х | | с | | | | ё | , | | | | в | д | у |
| | к | | | | н | | | | | . | о | к |
в | | о | | | | н | | | | | | л | а |
ы | | м | | | | ы | | | | | | г | |
е | | | | | | й | | | | | | о | в |
л | | а | | | | , | | | | | | | |
. | | д | | | | | | | | | | н | р |
| | е | | | | г | | | | | | е | у |
| | . | | | | л | | | | | | | к |
| | | | | | а | | | | | | в | а |
| | | | | | д | | | | | | л | в |
| | | | | | и | | | | | | е | . |
| | | | | | л | | | | | | з | |
| | | | | | . | | | | | | е | |
| | | | | | | | | | | | т | |