Mailinglisten-Archive |
Dennis Sterzenbach wrote: > Die Konstante IST definiert. > Aber (offensichtlich) gibts(gabs?) einen Bug bei Prepared bzw. > parameterisierte Statements wie dieses: > $db->getAll('SELECT * FROM tblx WHERE type=?', MYDEFAULTTYPE); > > da kam nämlich immer SELECT * FROM tblx WHERE type=MYDEFAULTTYPE > bei raus, statt dass der Wert von MYDEFAULTTYPE eingesetzt wurde. ich kann mir fast nicht vorstellen das dies ein Fehler von PEAR::DB ist, weil die aufgerufene Funktion gar nicht weiß woher die Daten Kommen, ob aus einer Konstante, Funktion oder Variable! function funktion( $param ) {} die Funktion bekommt ja immer nur das ausgewertet Ergebnis des Funktions-Aufrufs, die Funktion kann gar nicht wissen ob der Parameter aus einer Konstante oder Variablen oder sonst woher kommt und demzufolge kann sie erst recht nicht wissen wie die Konstante hieß. also: funktion( KONSTANTE ) funktion( $variable ) funktion( $objekt ) funktion( funktion() ) funktion( &$variable ) wird folglich zu funktion( 'Konstanteninhalt' ) funktion( 'Variableninhalt' ) funktion( Objekt ) // PHP4 funktion( Objektreferenz ) // PHP5 funktion( 'Funktionsrückgabe' ) funktion( Variablenreferenz ) und nur diesen Inhalt bekommt die Funktion, wenn also die Funktion da etwas anderes bekommt hat das nichts mit der Funktion zu tun, sondern mit dem Parser. -- Sebastian Mendel www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive