【发布时间】:2013-09-18 18:02:18
【问题描述】:
我有一个会话变量 $_SESSION['condition'],我知道它已设置,因为当我输入这个时:
echo $_SESSION['condition']." = "."Below Average";
返回:
Below Average = Below Average
当我对会话变量执行 gettype() 时,它返回类型“字符串”。
然而,当我执行 strcmp() 时,它返回:-34
我还尝试了一个带有 == 的 IF 语句,而不是 strcmp 测试是否相等,以及一个 IF 语句将它们都转换为字符串并测试它们是否相等但没有运气。
这可能是什么原因?
【问题讨论】:
-
如何设置 $_SESSION['condition'] 的值?那里可能有一个不可见的流浪换行符吗?
-
var_dump($_SESSION['condition']);输出什么? -
您能告诉我们您正在使用的 IF 语句吗?
-
查看 strcmp() 的返回值以及 Eric。如果这是您所希望的,它不会返回 TRUE。事实上,如果字符串匹配被错误地评估为假,它会返回 0。 php.net/manual/en/function.strcmp.php
标签: php session strcmp gettype