php – StrRev()Dosent支持UTF-8

我正在尝试制作一个替代阿拉伯语文本的代码,以支持非阿拉伯语支持的程序
因为我需要在替换后反转文本但它显示一些垃圾内容而不是想要的结果

这是代码

<?PHP
$string = "اهلا بك";
echo "$string <br>";
$Reversed = strrev($string);
echo "<br><b>After Reverse</b><br><br>";
echo "<br> $Reversed";
?>

结果:

اهلا بك

After Reverse


�٨� �؄ه٧

我需要它是它的方式,但逆转?不是垃圾!!

解决方法:

为了使strrev()支持UTF-8
你需要使用这个功能

function utf8_strrev($str){
    preg_match_all('/./us', $str, $ar);
    return join('', array_reverse($ar[0]));
}

所以我们要在我们的代码中将strrev()变为utf8_strev():

$string = "اهلا بك";
echo "$string <br>";
$Reversed = utf8_strrev($string); // here we have changed it
echo "<br><b>After Reverse</b><br><br>";
echo "<br> $Reversed";

结果是:

اهلا بك

After Reverse


كب الها

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...