我在单元测试中比较了两个字符串。当我回显这些字符串时,它们看起来完全相同......但是......当将它们与 strcmp 进行比较时,它们不是。
当查看 strlen() 时,一个字符串比另一个字符串稍长,大约 3 个字符。
我怀疑这可能是由于换行/换行造成的。
字符串 $a 是从文件加载的(在 Windows 上),另一个 $b 由脚本生成。我在单元测试中比较 $b 和 $a。
如何转换所有换行以使它们无论如何都相同?
最佳答案
首先,查明这是否确实是问题所在。 var_dump
在某些环境中,如果存在空行,您会看到这两个字符串。
然后,如果行结尾有问题,请使用 trim
删除它们
$str = trim($str);
或str_replace
$str = str_replace(array("\r", "\n"), "", $str);
关于php - 字符串看起来准确,但它们不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4961206/