Mailinglisten-Archive |
Hallo Yannik, Yannik Hampe wrote: > > Martin Adler wrote: >> Hallo Liste, >> >> Natürlich kann ich statt mit fetch() ein fetchAll() durchführen und >> dann das Array mit count() durchzählen lassen ... aber wäre dies >> die einzige sichere Möglichkeit? > > Es ist in jedem Fall eine Möglichkeit und dabei keine schlechte. Die > Lösung verbraucht zwar mehr RAM, aber weniger CPU. Bei kleinen > Selects, wie es bei php meistens üblich ist (zumindest, wo es dich > interessiert, wieviele Ergebnisse zurückkamen sind die Ergebnisse eh > klein und daher auch keine grosse Belastung). Übrigens cachen die > mysql_* Funktionen auch per Standard alle Select-Ergebnisse :-)). dachte ich mir schon, dass es auf fetchAll() hinausläuft. Ist aber auch nicht weiter schlimm :-) >> Ein anderer Punkt, welcher mich nur beiläufig interessieren würde, >> wäre ob es eine Vergleichbare Methode existiert wie >> "mysqli_stmt_bind_result(). > > Schau doch in der Funktionsübersicht nach: > http://de3.php.net/manual/en/ref.pdo.php Wenn du dir die Mühe machst > in der Funktionsliste mal zu schauen, was es so gibt, findest du > auch, was du suchst: > http://de3.php.net/manual/en/function.PDOStatement-bindColumn.php Hab ich aber eben leider tatsächlich übersehen ... :-/ > Wobei ich dir herzlich davon abrate solche Funktionen zu verwenden. > Du selbnst weisst zwar vielleicht, welche Vars du an welche Spalten > gebunden hast, aber spätestens, wenn ein fremder Programmierer deinen > qt liest kann es ganz schön verwirrend sein, wenn du in einer > Schleife mit fetch() jedesmal scheinbar auf eine sich nicht ändernde > Variable zugreifst. > Schreib' lieber in deinen SQL-Query zu den Feldern immer AS name: > SELECT col AS mycol FROM ... Und hol' dir dann die Daten assoziativ. Würde ich ehrlich gesagt auch nicht tun aber die Möglichkeit könnte sich u.U. irgendwann als interessant erweisen. >> herzlichen Dank und viele Grüße Martin Adler > > Yannik auf jedenfall vielen Dank für deine Antwort! grüße Martin
php::bar PHP Wiki - Listenarchive