@anonymous/

SalmonGoldenExpertise

PHP (Legacy)

No description

fork
loading
main.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
 
error_reporting(-1);
mb_internal_encoding('utf-8');
 
$text = "Кажется, нас обнаружили! Надо срочно уходить отсюда, пока не поздно. Бежим же скорее!";
// Другие варианты для тестов
// $text = "Ну, прости меня! Не хотела я тебе зла сделать; да в себе не вольна была. Что говорила, что делала, себя не помнила.";
// $text = "Идет гражданская война. Космические корабли повстанцев, наносящие удар с тайной базы, одержали первую победу, в схватке со зловещей Галактической Империей.";
 
/* Делает первую букву предложения заглавной */
function makeFirstletterUppercase($text) {
    return mb_strtoupper(mb_substr($text, 0, 1)) . mb_substr($text, 1);
}
 
function makeYodaStyleText($text) {
    $result = '';
    $newStrings = [];
    $text = preg_replace('/(,|;)/ui', '', $text);
    $strings = preg_split('/(!|\.|\?)/ui', $text, -1, PREG_SPLIT_NO_EMPTY);
    foreach ($strings as $string) {
    	$string = mb_strtolower(trim($string));
    	$words = array_reverse(preg_split('/\s/ui', $string, -1, PREG_SPLIT_NO_EMPTY));
    	$newStrings[] = makeFirstletterUppercase(implode(' ', $words) . '.');
    }
    $result = implode(' ', $newStrings);
    return $result;
}

$yodaText = makeYodaStyleText($text);
echo "Йода говорит: {$yodaText}\n";
?>
PHP 7.0.8 (Legacy: use the following for new features: Command-line PHP: https://repl.it/languages/php_cli PHP Web Server: https://repl.it/languages/php7