首页 新闻 会员 周边

php 中的strrchr()输出的到底是什么啊

0
悬赏园豆:20 [已解决问题] 解决于 2015-09-27 20:30
<?php
$str1 = "今天不是下雨天,感觉不错哟,没下雨,,,啊";
$res1 = strrchr($str1,"下雨");
echo "$res1 <br />";
//正常输出了
//下雨,,,啊
$str2 = "我爱你中国啊中国啊五十几个族啊";
$res2 = strrchr($str2,"中");
echo "$res2 <br />";
var_dump($res2);
//为什么会输出这个??
//好郁闷啊 //个族啊 //string '个族啊' (length=9)

php
问题补充:

其他的输出都正常。。这是什么鬼。。

闻香识人的主页 闻香识人 | 初学一级 | 园豆:29
提问于:2015-09-26 23:10
< >
分享
最佳答案
2

php的这个函数strrchr  参数如果是中文的话,会先用 urlencode() 函数 进行编码。

编码之后是这样:

php 认为这是三个字符

而strrchr 函数如果参数 有多个字符的,则只使用第一个字符,

结果:

相等喽。

收获园豆:20
电磁魔王喵喵 | 小虾三级 |园豆:1339 | 2015-09-27 11:06

谢谢,中秋快乐。。。str,还有个问题,strcmp()如果比较英文和中文的,按照字典排序是按照  Unicode排序的吗,

闻香识人 | 园豆:29 (初学一级) | 2015-09-27 20:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册