以下代码会产生未定义的索引错误:
if(isset($_SESSION['sessionName'])); { echo $_SESSION['sessionName']; }
但这很好用:
if(isset($_SESSION['sessionName'])) echo $_SESSION['sessionName'];
请同时检查是否设置了$_SESSION
,如果为TRUE,则显示/回显该$_SESSION
的值。
我通常使用花括号,但在第一种情况下看不到或理解该错误。
我的IDE(PHPStorm)不会抱怨语法,因此我可能会遇到问题。
答案 0 :(得分:3)
我将my comment转换为带有其他信息的答案。
分号结束一条语句,per the manual:”“与C或Perl一样,PHP要求在每个语句的末尾以以分号终止的指令。 PHP代码块的结束标记自动表示分号;您无需在分号结尾处终止PHP块的最后一行。如果存在,该代码块的结束标记将包括紧随其后的换行符。“ / em>
这里发生的事情是,您向我们显示的第一行产生了错误,因为isset()
由于分号而被取消/暂停,然后您试图回显一个不完整的会话数组没有设置/不为空。
您可能还没有开始会话;目前还不知道。