phpbar.de logo

Mailinglisten-Archive

[php] Methode lieber statisch oder nicht

[php] Methode lieber statisch oder nicht

Steffen Kother steffen.kother at gmx.net
Fre Sep 14 14:08:35 CEST 2007


Hi ihr,

Yannik Hampe wrote:
> 
> Dann kommt noch dazu, dass pdo ein paar tolle Performancesteigerungen 
> hat. Wie zum Beispiel foreach($statement as $row). Das ist zwar nur
> gerinfühgig schneller als die while-Lösung von mysql_fetch_*,
> aber wenn man sich nur genug Zeilen aus der DB holt fällt es schon ins
Gewicht.

Wobei ich da ein Verständninsproblem habe. Wie müsste ich die Zeit für
einen korrekten Vergleich PDO vs. MySQL ermitteln?

Variante A:
===========
$pdoso = pdo -> query('SELECT * FROM something');
$pdoso -> setFetchMode(PDO::FETCH_ASSOC);$query = mysql_query('SELECT *
FROM something');

for ($i = 0; $i < 10000; $i++) {
	// PDO
	foreach ($pdoso as $row) {
		// Eine Zeile aus dem ganzen Ergebnis nehmen
	}

	// MySQL
	while($record = mysql_fetch_assoc(§query) {
		// Ergebnis an der Resource abholen
	}
}

Variante B:
===========
for ($i = 0; $i < 10000; $i++) {
	// PDO
	foreach (pdo -> query('SELECT * FROM something') as $row) {
		// Eine Zeile an der Resource abholen
	}

	// MySQL unverändert
}

Bei Variante A liegt PDO vor mysql_fetch_assoc() und PDOs fetchAll().
Ich habe dazu einfach mal 10000 Loops über unseren Teilestamm (ca. 8500
Sätze) gemacht und mir die Zeiten anzeigen lassen. Variante B ist
natürlich zu gunsten mysql_fetch_assoc() ausgefallen.

Ein schönes WE euch allen.
-- 
Mit freundlichen Gruessen / Kind regards

Steffen Kother


php::bar PHP Wiki   -   Listenarchive