[英]PHP error, if-statement
什么拧这个代码?
if(isset($this->session->flashdata('login_error'))) { // Line 39
echo "You entered an incorrect email or password!";
}
我使用Codeigniter并在autoload.php
中autoload.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.