phpbar.de logo

Mailinglisten-Archive

[php] PDO rowCount

[php] PDO rowCount

Martin Adler adler.martin at web.de
Die Mai 8 20:35:14 CEST 2007


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