我不知道我要去哪里。
我之前做过很多字符串比较,而这个只是拒绝工作,下面是代码;
$comparison_string = 'Transfers';
if ($location_name_chk == 0)
$location_name_chk = 'Not_Transfers_Location';
echo $location_name_chk;
if(strcasecmp($location_name_chk, $comparison_string) == 1) {
echo 'Location not Transfers';
die();
从本质上讲,它没有到达比较字符串的部分。
我可以100%确认$comparison string == Transfers
以及$location_name_chk == Not_Transfers_Location
和echo $location_name_chk
确实在“网络显示”标签中正确显示。
有什么想法吗?我尝试了其他问题中遇到的各种不同想法,但都无济于事(修剪,strcasecmp等)
答案 0 :(得分:1)
有时(实际上是总是),reading the manual会有所帮助。
strcasecmp(字符串$ str1,字符串$ str2):int
如果str1小于str2,则返回<0;否则,返回0。如果str1大于str2,则> 0;如果相等,则为0。
一些例子:
strcasecmp("abc", "Abc"); // 0
strcasecmp("abc", "Abcd"); // negative number (-1)
strcasecmp("abc", "Abcdefg"); // negative number (-4)
strcasecmp("Abcd", "abc"); // positive number (1)
strcasecmp("Abcdefg", "abc"); // positive number (4)
strcasecmp("abc", "def"); // negative number (-3)
strcasecmp("def", "abc"); // positive number (3)
在您的代码中,更改此内容:
if(strcasecmp($location_name_chk, $comparison_string) == 1)
对此
// Notice this --------------------------------------V
if(strcasecmp($location_name_chk, $comparison_string) == 0)