在 PHP 中,二进制安全字符串比较是什么意思?

In PHP what does it mean by a binary safe string comparison?

包含此描述的PHP函数的一些示例是strcmp() 和strcasecmp(),它们在内部是如何工作的?这种二进制比较是如何工作的? 我一直无法理解为什么这些函数 return -1、0 和 1(或 <0、0 和 >0)

提前致谢

  1. 如果两个字符串具有相同的 BEGINNING 部分,则从两个字符串中截断它们。
  2. 将生成的字符串与两种可能的结果进行比较:
  • 如果其中一个结果字符串是空字符串,则返回 non-empty 字符串的长度(符号取决于您将参数传递给函数的顺序)
  • 在任何其他情况下,只比较第一个字符的数值。无论数值之间的差异有多大,结果都是+1或-1。

source