繁体   English   中英

PHP错误,if语句

[英]PHP error, if-statement

什么拧这个代码?

if(isset($this->session->flashdata('login_error'))) {      // Line 39
     echo "You entered an incorrect email or password!";
}

我使用Codeigniter并在autoload.phpautoload.php会话。

我得到的错误信息是:

致命错误:无法在第39行的/Applications/XAMPP/xamppfiles/htdocs/application/views/login_view.php中的写入上下文中使用方法返回值

只有在尝试使用可能不存在的变量时才需要isset 在你的情况下,你正在调用一个肯定存在的函数 因此你不需要,实际上不能在这里使用isset 如果你想测试值是否真实,只需使用if ($this->session->flashdata('login_error'))

只检查if($ this-> session-> flashdata('login_error'))是否会返回false,如果此函数的结果是布尔值FALSE或NULL

你不能使用像这样的isset函数。 你能做的是:

$txt = $this->session->flashdata('login_error');
if(!empty($txt))
{
     echo "You entered an incorrect email or password!";
}

isset仅检查实例化的变量。 由于您只能返回实例化变量,因此isset无效。 你最好的选择就是这样做:

if($this->session->flashdata('login_error') != null) {      // Line 39
     echo "You entered an incorrect email or password!";
}

暂无
暂无

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

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