PHP值不等于它的回显值

PHP值不等于它的回显值,php,Php,我在$array[1]中得到了一个值,我想知道它是什么,所以我 可以在我的代码的其他部分进行比较 所以我回显$array[1],得到了vrij或vrij $value = $array[1]; echo $value ; // outputs "vrij " if($value = $array[1]){ echo "TRUE 1"; } if($value = "vrij "){ echo "TRUE 2"; } 问题是,只有echo才是真的。我复制粘贴了回

我在$array[1]中得到了一个值,我想知道它是什么,所以我 可以在我的代码的其他部分进行比较

所以我回显$array[1],得到了vrij或vrij

$value = $array[1];
echo $value ; // outputs "vrij     "
if($value = $array[1]){
    echo "TRUE 1";
} 
if($value = "vrij     "){ 
   echo "TRUE 2";
}

问题是,只有echo才是真的。我复制粘贴了回声,但它没有返回真值2

您将$array[1]的值赋给$value,而不是比较它们。将if子句中的=改为==。

将$array[1]的值赋给$value,而不是比较它们。将if子句中的=改为==。

尝试过,但没有任何区别。我想这是因为空格被转换成了特殊的字符或者别的什么。。。。无论如何,我还是要感谢第二个,尽管第二个TRUE 2没有显示仍然很奇怪,因为vrij在作为布尔处理时会被视为TRUE;这也是为什么好的编码标准通常建议将变量放在诸如vrij==$value之类的运算符后面以防止这些意外错误的原因。谢谢,最后是5个空格和两个输入。我花了两天时间才弄明白哈哈。再次感谢:试过了,但没什么区别。我想这是因为空格被转换成了特殊的字符或者别的什么。。。。无论如何,我还是要感谢第二个,尽管第二个TRUE 2没有显示仍然很奇怪,因为vrij在作为布尔处理时会被视为TRUE;这也是为什么好的编码标准通常建议将变量放在诸如vrij==$value之类的运算符后面以防止这些意外错误的原因。谢谢,最后是5个空格和两个输入。我花了两天时间才弄明白哈哈。再次感谢:执行var_dump$值和var_dump$数组[1],这将显示两个变量类型+大小+内容的更多细节。值和实际空间之间存在很大差异,我认为这是造成问题的原因。执行var_dump$值和var_dump$数组[1],这将显示两个变量类型+大小+内容的更多细节。值和实际空间之间存在很大差异,我认为这是造成问题的原因。