Can't use function return value in write context

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tom Beuckelaere

Tom Beuckelaere

02/09/2007 11:04:00
Quote Anchor link
Ik krijg volgende error: Can't use function return value in write context...

het is in oop.

Men declaratie gebeurt hier:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
public $items = array(), $messages = array(), $classPath;
?>

En hier wijst de fout naar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
public function __construct(){
        require_once('config.php');
           $this->config = Config::getInstance();
           $this->classPath = $this->config->path_class;
           require_once($this->classPath . '/class.mysql_connection.php');//other databases are not supported
           $this->mysql = new Connection();     

           ob_start();                      
        
        foreach ($_GET as $key => $val){
            if(!is_array($val)){
                $this->items[$key] = $this->cleanItems($key,$val);
            }
        }
}

private function cleanItems($key,$val){
        
        if(empty(trim($val))){ // fout duikt hier op
            $this->messages[$key] = "<font color='red'>Invalid!</font>";
        }
}

?>
Gewijzigd op 01/01/1970 01:00:00 door Tom Beuckelaere
 
PHP hulp

PHP hulp

24/11/2024 09:17:06
 
Martijn B

Martijn B

02/09/2007 11:15:00
Quote Anchor link
Je gebruikt op regel 13 de methode cleanItems alleen heeft deze geen resultaat waarde.
 
Tom Beuckelaere

Tom Beuckelaere

02/09/2007 11:22:00
Quote Anchor link
In feite moet de foreach zo zijn, maar dan is het nog niet opgelost:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?

foreach ($_GET as $key => $val){
     if(!is_array($val)){
         $this->cleanItems($key,$val);
     }
}


?>


Maak ff duidelijk hoe ik dit zou oplossen, ben niet erg sterk om bepaalde errors op te lossen :s
 
Jelmer -

Jelmer -

02/09/2007 11:41:00
Quote Anchor link
empty werkt net als isset, hij gebruikt eigenlijk niet de waarde van de variabele, maar de variabele zelf. Passed by reference als het ware.

De enige oplossing is dus eigenlijk die regel vervangen door
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(strlen(trim($val)) === 0 {

}

?>

of natuurlijk
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if(trim($val) == '') {

}

?>

etc.

Iig, empty() biedt hier geen uitkomst.
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
 
Tom Beuckelaere

Tom Beuckelaere

02/09/2007 12:41:00
Quote Anchor link
Ja, dit heeft gewerkt ;)

Dank je wel

Tom
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.