问题描述
我在使用strcmp函数时遇到了一个奇怪的问题。
我需要比较2个包含反引号(`)的字符串:
$result = strcmp('CREATE TABLE `postsTranslations` (','CREATE TABLE `posts` (');
我希望此比较的结果应为>0
,因为postsTranslations
按字母顺序位于posts
之后。但是结果是-1
。如果我删除反引号,一切都会按预期进行。在不删除反引号的情况下,可以按字母顺序比较这些字符串吗?
解决方法
您需要在此处使用strcasecmp。它执行二进制安全的不区分大小写的字符串比较。