PHP error Can't use method return > value in write context

JasonDavis picture JasonDavis · Jan 17, 2010 · Viewed 10.8k times · Source

I am getting this error in a PHP class...

Fatal error: Can't use method return value in write context in C:\webserver\htdocs\friendproject2\includes\classes\User.class.php on line 35

Here is the troubled part.

if(isset($this->session->get('user_id')) && $this->session->get('user_id') != ''){
    //run code
}

This code is in my contrustor, is a value is not already set for $this->session->get('user_id') then it will return false instead of a Number. So as you can see I was hoping to check if this value is a number or not or not even set.

Any help with fixing appreciated.

Answer

St.Woland picture St.Woland · Jan 17, 2010

You can't use isset for the result of a function. Consider the following code instead:

if( $this->session->get('user_id') ){
    //run code
}