fork download
  1. <?php
  2. $text = "Дым табачный воздух выел.
  3. Комната -
  4. глава в крученыховском аде.
  5. Вспомни -
  6. за этим окном
  7. впервые
  8. руки твои, исступлённый, гладил.
  9. Сегодня сидишь вот,
  10. сердце в железе.
  11. День ещё -
  12. выгонишь,
  13. может быть, изругав.
  14. В мутной передней долго не влезет
  15. сломанная дрожью рука в рукав.";
  16. $array = preg_split('/\n/u', $text);
  17. $max = 0;
  18. foreach ($array as &$value) //поиск максимальной длинны
  19. {
  20. $value = trim($value);
  21. if (mb_strlen($value) > $max)
  22. $max = mb_strlen($value);
  23. }
  24.  
  25. foreach ($array as &$value) //дополнение до максимальной длинны
  26. {
  27. $len = mb_strlen($value); //насколько изначально отл.
  28. if (mb_strlen($value) < $max)
  29. for ($i = 1; $i <= $max - $len; $i++)
  30. $value .= " ";
  31. }
  32.  
  33. $array2 = array_fill(0, $max, "");
  34. for ($k = 0; $k <= $max - 1; $k++)
  35. for ($i = 0; $i <= count($array) - 1; $i++)
  36. {
  37. $array2[$k] .= mb_substr($array[$i], $k, 1);
  38. $array2[$k] .= ' | ';
  39. }
  40.  
  41. foreach ($array2 as $value)
  42. {
  43. echo "$value\n";
  44. }
Success #stdin #stdout 0.01s 20520KB
stdin
Standard input is empty
stdout
Д | К | г | В | з | в | р | С | с | Д | в | м | В | с | 
ы | о | л | с | а | п | у | е | е | е | ы | о |   | л | 
м | м | а | п |   | е | к | г | р | н | г | ж | м | о | 
  | н | в | о | э | р | и | о | д | ь | о | е | у | м | 
т | а | а | м | т | в |   | д | ц |   | н | т | т | а | 
а | т |   | н | и | ы | т | н | е | е | и |   | н | н | 
б | а | в | и | м | е | в | я |   | щ | ш | б | о | н | 
а |   |   |   |   |   | о |   | в | ё | ь | ы | й | а | 
ч | - | к | - | о |   | и | с |   |   | , | т |   | я | 
н |   | р |   | к |   | , | и | ж | - |   | ь | п |   | 
ы |   | у |   | н |   |   | д | е |   |   | , | е | д | 
й |   | ч |   | о |   | и | и | л |   |   |   | р | р | 
  |   | е |   | м |   | с | ш | е |   |   | и | е | о | 
в |   | н |   |   |   | с | ь | з |   |   | з | д | ж | 
о |   | ы |   |   |   | т |   | е |   |   | р | н | ь | 
з |   | х |   |   |   | у | в | . |   |   | у | е | ю | 
д |   | о |   |   |   | п | о |   |   |   | г | й |   | 
у |   | в |   |   |   | л | т |   |   |   | а |   | р | 
х |   | с |   |   |   | ё | , |   |   |   | в | д | у | 
  |   | к |   |   |   | н |   |   |   |   | . | о | к | 
в |   | о |   |   |   | н |   |   |   |   |   | л | а | 
ы |   | м |   |   |   | ы |   |   |   |   |   | г |   | 
е |   |   |   |   |   | й |   |   |   |   |   | о | в | 
л |   | а |   |   |   | , |   |   |   |   |   |   |   | 
. |   | д |   |   |   |   |   |   |   |   |   | н | р | 
  |   | е |   |   |   | г |   |   |   |   |   | е | у | 
  |   | . |   |   |   | л |   |   |   |   |   |   | к | 
  |   |   |   |   |   | а |   |   |   |   |   | в | а | 
  |   |   |   |   |   | д |   |   |   |   |   | л | в | 
  |   |   |   |   |   | и |   |   |   |   |   | е | . | 
  |   |   |   |   |   | л |   |   |   |   |   | з |   | 
  |   |   |   |   |   | . |   |   |   |   |   | е |   | 
  |   |   |   |   |   |   |   |   |   |   |   | т |   |