字符串函数
在线手册:中文  英文

strrev

(PHP 4, PHP 5)

strrev反转字符串

说明

string strrev ( string $string )

返回 string 反转后的字符串。

参数

string

待反转的原始字符串。

返回值

返回反转后的字符串。

范例

Example #1 使用 strrev() 反转字符串

<?php
echo strrev("Hello world!"); // 输出 "!dlrow olleH"
?>


字符串函数
在线手册:中文  英文

用户评论:

manfred at werkzeugH dot at (2008-05-27 04:35:07)

here is my version for strings with utf8-characters represented as numerical entities (e.g. &#1234;)
function utf8_entities_strrev($str, $preserve_numbers = true)
{
//split string into string-portions (1 byte characters, numerical entitiesor numbers)
$parts=Array();
while ($str)
{
if ($preserve_numbers && preg_match('/^([0-9]+)(.*)$/',$str,$m))
{
// number-flow
$parts[]=$m[1];
$str=$m[2];
}
elseif (preg_match('/^(\&#[0-9]+;)(.*)$/',$str,$m))
{
// numerical entity
$parts[]=$m[1];
$str=$m[2];
}
else
{
$parts[]=substr($str,0,1);
$str=substr($str,1);
}
}
$str=implode(array_reverse($parts),"");
return $str;
}

carmel.alex at gmail.com (2006-02-28 00:54:32)

This function support utf-8 encoding
function utf8_strrev($str){
preg_match_all('/./us', $str, $ar);
return join('',array_reverse($ar[0]));
}

MagicalTux at FF dot st (2005-05-12 06:20:23)

I will make Screend at hf dot webex dot com's comment more clear and understandable.
strrev only works for singlebyte character-sets. Multibytes charactersets are not compatibles with strrev.
US-ASCII and ISO-8859-* are compatible with strrev, however BIG5, SJIS, UTF-8 aren't.
There's no mb_strrev function in PHP, so you can't strrev() a multibyte string. Try to convert it to something else with iconv() if it can be represented in a singlebyte character set.

易百教程