Как проверить последнюю строку и изменить ее с помощью PHP

У меня есть 2 разные проблемы, как это:

  1. Проблема:

$string = "i like to eat apple";

вывод должен быть: я люблю есть elppa

  1. Проблема:

$string = "orange";

Вывод должен быть: egnaro;

Итак, если строка одиночная, вывод будет обратным от строки. Но если в строке более одного слова, только последнее слово будет обратным.


person brinardi    schedule 18.03.2019    source источник
comment
Вы пробовали что-нибудь?   -  person Andrei    schedule 18.03.2019
comment
вы проверили строковую функцию?   -  person PHP Ninja    schedule 18.03.2019
comment
Это действительно не сложная задача. Вам следует погуглить и придумать код. Затем разместите код здесь, если вам нужна помощь.   -  person therochvoices    schedule 18.03.2019
comment
к вашему сведению, engaro не является противоположностью orange   -  person brombeer    schedule 18.03.2019


Ответы (3)


strrev(s) вернуть обратное значение s

и взорвать (s) разделить строку s

array_pop(s) возвращает последний элемент s

<?php
$string ="i like to eat apple";
$pieces = explode(' ', $string);
$last_word = array_pop($pieces);
echo strrev($last_word);
?>
person esnkrimi    schedule 18.03.2019

Вам необходимо выполнить 2 шага:

  • Найдите последнее слово предложения. В случае одного слова он возвращает это слово.
$string = 'Retrieving the last word of a string using PHP.';
$last_word_start = strrpos($string, ' ') + 1; // +1 so we don't include the space in our result
$last_word = substr($string, $last_word_start); // $last_word = PHP.

Подробнее здесь: Получить последнее слово строки

  • Перевернуть строку
echo strrev("Hello world!"); // outputs "!dlrow olleH"
person Duc Vu    schedule 18.03.2019
comment
Однако этот первый код не будет работать для второй проблемы OP: $string = "orange"; - person brombeer; 18.03.2019

Я был найден ответ. На мой собственный вопрос

$split = explode(" ", $words);
$v_last = $split[count($split)-1]; 
$reverse = strrev($v_last);
$f_word = chop($words,$v_last);
echo $f_word;
echo $reverse;
person brinardi    schedule 18.03.2019
comment
@wscourge, почему вы редактируете ответ, чтобы попробовать это. Попробуйте это, как правило, не принимается в качестве объяснения ответа. Раньше было не лучше, но все же? - person Andreas; 18.03.2019
comment
@Andreas Андреас Я чувствовал, что должен написать что-нибудь, что угодно, чтобы сопровождать решение. Сам код достаточно информативен. Что ты предлагаешь? - person wscourge; 18.03.2019
comment
@wscourge Я предлагаю комментарий, в котором говорится, что это не способ ответить на вопрос здесь, на SO. Все ответы должны иметь описание или что-то, что говорит ОП, что они сделали неправильно. Простая замена одной плохой вещи другой плохой вещью может быть истолкована как приемлемый ответ. И нет такой вещи, как самоописательный или самоописательный ответ. Если бы это было так, то не было бы и вопроса, так как тогда ОП уже все знал бы. - person Andreas; 18.03.2019
comment
@ Андреас Андреас, я сказал, что код говорит сам за себя, а не в вопросах и ответах. В остальном согласен, в следующий раз оставлю комментарий. Спасибо. - person wscourge; 18.03.2019
comment
Нет, код не является самоописательным. Такого нет. Зайди в мету и спроси, не веришь ли ты мне - person Andreas; 18.03.2019