繁体   English   中英

如何解决此通知错误

[英]how to fix this notice error

我出乎意料; 这行错误:

$ action =($ sessionMinus == $ _SESSION ['initial_count'])? 'create_session2.php';

但是,如果我删除; 然后它表示意外{在下面的行中,如何解决这个问题?

以下完整代码:

if ($sessionMinus == $_SESSION['initial_count']){

    $action = ($sessionMinus == $_SESSION['initial_count']) ? 'create_session2.php';

}else if($sessionMinus != $_SESSION['initial_count']){

    $action = ($sessionMinus != $_SESSION['initial_count']) ? $_SERVER['PHP_SELF'];

}

你有一个简短的if语句: [condition] ? [if_true] : [if_false] [condition] ? [if_true] : [if_false]

但是: [if_false]部分丢失了

要使用三元运算符,您需要具有条件为TRUE和FALSE时的值:

$action = ($sessionMinus != $_SESSION['initial_count']) ? $_SERVER['PHP_SELF'] : "false";

我不确定你为什么要做两次检查,以下就足够了:

<?php 
if ($sessionMinus == $_SESSION['initial_count']){ 

    $action = 'create_session2.php'; 

}else($sessionMinus != $_SESSION['initial_count']){ 

    $action = $_SERVER['PHP_SELF']; 

} 

如果条件不为真,则三元运算要求您添加备选项(而不是false):

$action = ($sessionMinus == $_SESSION['initial_count']) ? 'create_session2.php' : 'was_false';

Psuedo看起来像:

$variable = ($condition == true) ? true : false;

您可以在此处阅读有关比较运算符(和三元运算符)的更多信息。

你可能忘了别的命令

$action = ($sessionMinus == $_SESSION['initial_count']) ? 'create_session2.php':'';

所有代码都可以重写为:

$action = ($sessionMinus == $_SESSION['initial_count']) ? 'create_session2.php' : $_SERVER['PHP_SELF'];

玩得开心。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM