<?php

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

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

$result = [];
$key = 0;
foreach(preg_split( '//u', $text, null, PREG_SPLIT_NO_EMPTY ) as $symbol) {
    if($symbol != PHP_EOL) {
        $result[$key][] = $symbol;
        $key ++;
    } else {
        $key = 0;
    }
}

array_map(function($string) {
    echo implode("|", $string) ."\n";
}, $result);