fork download
  1. <?php
  2.  
  3. // your code goes here
  4.  
  5. $text = [
  6. "Кажется, нас обнаружили! Надо срочно уходить отсюда, пока не поздно. Бежим же скорее.",
  7. "Когда вы смотрите на Темную сторону, вы должны быть осторожны, потому что Темная сторона оглядывается в ответ",
  8. "Страх — это путь к Темной стороне. Страх ведет к гневу. Гнев ведет к ненависти. Ненависть ведет к страданию",
  9. "Вчера я ходил за покупками. Пришлось купить эти мягкие булочки. Еще их и съесть.",
  10. ];
  11.  
  12. function firstLetterUpper($string) {
  13. return mb_strtoupper(mb_substr($string, 0, 1)) . mb_substr($string, 1);
  14. }
  15.  
  16. function makeYodaStyleText($text) {
  17. $regexp = "/[.!?:;]+/ui";
  18.  
  19. $reversed = [];
  20.  
  21. $sentences = preg_split($regexp, $text);
  22.  
  23. $sentences = array_filter($sentences);
  24.  
  25. foreach($sentences as $sentence) {
  26. $words = preg_split("/([,]|\s)+/ui", $sentence);
  27.  
  28. array_push($reversed,
  29. firstLetterUpper(
  30. implode(' ', array_reverse($words)
  31. )))));
  32. }
  33.  
  34. return implode('. ', $reversed) . '.';
  35. }
  36.  
  37. foreach ($text as $paragraph) {
  38. echo makeYodaStyleText($paragraph) . "\n";
  39. }
Success #stdin #stdout 0.02s 26692KB
stdin
Standard input is empty
stdout
Обнаружили нас кажется. Поздно не пока отсюда уходить срочно надо. Скорее же бежим.
Ответ в оглядывается сторона темная что потому осторожны быть должны вы сторону темную на смотрите вы когда.
Стороне темной к путь это — страх. Гневу к ведет страх. Ненависти к ведет гнев. Страданию к ведет ненависть.
Покупками за ходил я вчера. Булочки мягкие эти купить пришлось. Съесть и их еще.