strcmp()在php中不起作用

strcmp()在php中不起作用,php,strcmp,Php,Strcmp,我使用strcmp()比较php中的两个字符串,代码如下: $tagname = "td"; $acq_data = extracting_data_tagname($url, $tagname); $dir = $acq_data[205]; echo "this is $dir"; echo strcmp($dir, "NW"); 结果打印: 这是西北方向 -一, 为什么strcmp($dir,“NW”)=-1,它应该是=0,任何人都可以告诉我问题出在哪里?谢谢 这是西北一号 其中

我使用strcmp()比较php中的两个字符串,代码如下:

$tagname = "td";
$acq_data = extracting_data_tagname($url, $tagname); 

$dir = $acq_data[205];  
echo "this is $dir";
echo strcmp($dir, "NW");
结果打印: 这是西北方向 -一,

为什么strcmp($dir,“NW”)=-1,它应该是=0,任何人都可以告诉我问题出在哪里?谢谢

这是西北一号

其中似乎有一个空格,这意味着
$dir
“NW”
,它不等于
“NW”


您应该在调试类似的东西时使用。它为我们和您提供了更有用、更清晰的输出。

如果您认为
$dir
具有
NW
值,则应尝试使用
trim()
函数:

echo strcmp(trim($dir), "NW");

如果它将返回0,则表示在
$dir
变量的开头或结尾有一些空格。

您的
$dir
为无值$dir无值?什么意思?在我的代码中,$dir从一个网页中获取了205个元素。你确定$acq_数据的索引号是205吗。还可以对函数提取\数据\标记名($url,$tagname)进行一些说明;而且echo语句应该是“echo”,这是“$dir”