phpbar.de logo

Mailinglisten-Archive

[php] Funktion mit n Parametern aufrufen

[php] Funktion mit n Parametern aufrufen

Christoph Rust christoph.rust at uplink.de
Don Feb 10 12:26:16 CET 2005


Hallo Liste!

Hab folgendes Problem:
Ich schreib gerade Interface-Klassen für MySQLI.
Dabei hängt es aber an der Methode MySQLI::Statement::bind_param(), da 
dort eine Liste von Parametern für die Statements übergeben werden können.
Also hab ich mich in der Interface-Methode für eval entschieden.

<Code>

        $objStatement = $this->objStatement;

        $command = 'return ';
        $command .= '$objStatement->bind_param(';
        $command .= '"'.$types.'"';
       
        for ($i = 1; $i < func_num_args(); $i++){
           
            $argItem = func_get_arg($i);
           
            if (is_string($argItem)){
                $argItem = '"{$argItem}"';
            }
            elseif (is_null($argItem)){
                $argItem = 'null';
            }
            elseif (is_bool($argItem)){
           
                if ($argItem){
                    $argItem = 'true';
                } else {
                    $argItem = 'false';
                }
                   
            }
           
            $command .= ','.$argItem;
           
        }
               
        $command .= ');';
       
        echo $command;
       
        echo eval($command);

</Code>

Leider funzt das ganze net so wie ich das will, da folgende 
Fehlermeldung auftaucht:

<Code>

return $objStatement->bind_param("ssd",123,123,123);
*Fatal error*: Cannot pass parameter 2 by reference in *datei.php(65) : 
eval()'d code* on line *1*

</Code>

Zur Informationen: PHP 5.0.3

Kann mir jemand sagen, wo der Fehler liegt?

Danke!
**

php::bar PHP Wiki   -   Listenarchive