什么是PHP中最好的方式来反转单词中的字母

时间:2009-07-23 06:32:01

标签: php string reverse

我有一个字符串。

我想要反转每个单词中的字母而不是颠倒单词顺序。

喜欢 - '我的字符串'

应该是

'ym gnirts'

5 个答案:

答案 0 :(得分:6)

这应该有效:

$words = explode(' ', $string);
$words = array_map('strrev', $words);
echo implode(' ', $words);

或者作为一个单行:

echo implode(' ', array_map('strrev', explode(' ', $string)));

答案 1 :(得分:2)

echo implode(' ', array_reverse(explode(' ', strrev('my string'))));

这比在爆炸原始字符串后反转数组的每个字符串要快得多。

答案 2 :(得分:1)

Functionified:

<?php

function flipit($string){
    return implode(' ',array_map('strrev',explode(' ',$string)));
}

echo flipit('my string'); //ym gnirts

?>

答案 3 :(得分:0)

这应该可以解决问题:

function reverse_words($input) {
    $rev_words = [];
    $words = split(" ", $input);
    foreach($words as $word) {
        $rev_words[] = strrev($word);
    }
    return join(" ", $rev_words);
}

答案 4 :(得分:0)

我愿意:

$string = "my string";
$reverse_string = "";

// Get each word
$words = explode(' ', $string);
foreach($words as $word)
{
  // Reverse the word, add a space
  $reverse_string .= strrev($word) . ' ';
}

// remove the last inserted space
$reverse_string = substr($reverse_string, 0, strlen($reverse_string) - 1);
echo $reverse_string;
// result: ym gnirts