<?php

error_reporting(-1);
mb_internal_encoding('utf-8');

$text = 
"Дым табачный воздух выел.
Комната —
глава в крученыховском аде.
Вспомни —
за этим окном
впервые
руки твои, исступлённый, гладил.
Сегодня сидишь вот,
сердце в железе.
День ещё —
выгонишь,
может быть, изругав.
В мутной передней долго не влезет
сломанная дрожью рука в рукав.";

$text = explode("\n", $text);

$length = max(array_map("mb_strlen", $text));
for ($i = 0; $i < $length; ++$i) {
    echo "\n";
    for ($b = 0; $b < count($text); ++$b) {
    	$c = mb_substr($text[$b], $i, 1);
    	echo $c ? $c : " ";
        echo "|";
    }
}