函数返回FALSE

时间:2016-04-03 16:44:49

标签: php sql codeigniter codeigniter-2

我有一个php函数。

                if ( $this->input->post('email') == $this->_email($this->input->post('email')) )
            {
                $this->_data['error'] = 'Email exist!';
                return $this->load->view('login/template_view', $this->_data);
            }

我的函数只返回FALSE,即使相等也是如此。我使用debug来查看我的函数是否可以返回TRUE。

bool(false) string(14) "alex@yahoo.com" object(stdClass)#25 (1) { ["email"]=> string(14) "alex@yahoo.com" }

我有2个字符串,第一个是返回alex@yahoo.com,第二个字符串是返回alex@yahoo.com ...但是如果条件仍然返回FALSE。

我的功能出了什么问题?

调试:

                var_dump($this->input->post('email'));
                var_dump($this->_email($this->input->post('email')));
                die();

1 个答案:

答案 0 :(得分:0)

您正在将字符串与对象进行比较。为了使您的比较起作用,您需要将字符串与对象的email属性进行比较。您可以使用->或使用方法访问对象属性。

您可以阅读有关PHP对象herehere的更多信息。

为了使代码正常工作,请替换:

if ( $this->input->post('email') == $this->_email($this->input->post('email')) )

if ( $this->input->post('email') == $this->_email($this->input->post('email'))->email )