STRCHR与STRRCHR的区别?

时间:2013-03-31 01:57:39

标签: php string strchr strrchr

我想知道两种不同用途之间的区别。 我相信一些非常微妙的区别。

这是IBM参考手册中的解释。 然而,也许我的英语很糟糕,我无法想象其中的差异。

也许向我展示这两种情况的例子可以帮助我更好地理解这一点。

以下是IBM的解释:

strchr子例程返回指向由String参数指向的字符串中的字符(转换为无符号字符)参数指定的字符的第一个匹配项的指针。如果字符串中没有出现该字符,则返回空指针。终止字符串的空字节被视为字符串的一部分。

strrchr子例程返回指向由String参数指向的字符串中的字符(转换为字符)参数指定的字符的最后一次出现的指针。如果字符串中没有出现该字符,则返回空指针。终止字符串的空字节被视为字符串的一部分。

2 个答案:

答案 0 :(得分:8)

strchrstrstr的别名:

  

开始,首先返回haystack字符串的一部分   将针头发生到干草堆的末端。

strrchr

  

此函数返回haystack的部分,该部分从最后开始   针的发生直到干草堆结束。

strchr从第一次出现开始,strrchr从最后一次出现开始。

答案 1 :(得分:8)

strchr找到第一个匹配项,strrchr查找字符或字符串的最后一次出现

$s = 'This is a test';
$first = strchr($s, 's');
$last = strrchr($s, 's');
  • $first包含s is a test
  • $last包含st