<?php
error_reporting(-1);
mb_internal_encoding('utf-8');

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

$lines = explode("\n", $text);
$len = max(array_map('mb_strlen', $lines));

foreach (range(0, $len) as $i) {
	foreach ($lines as $line) {
		$val = mb_substr($line, $i, 1) ?: ' ';
		echo "$val|";
	}
	echo "\n";
}
