Kleine Performance Frage
Phil Z.
- php
Hallo
Ich habe eine kleine Frage zur Performance.
Was ist an schnellsten von der Verarbeitung her:
1.
$nick=$_POST['nick'];
$nick=htmlentities($nick);
$nick=mysql_escape_string($nick);
2.
$nick=htmlentities($_POST['nick']);
$nick=mysql_escape_string($nick);
3.
$nick=mysql_escape_string(htmlentities($_POST['nick']));
Meienr Meinung nach 3.. Gibt es vllt. noch ein 4.? Was euch einfällt?
mfg
Phil Z.
$nick=$_POST['nick'];
$nick=htmlentities($nick);
$nick=mysql_escape_string($nick);
$nick=htmlentities($_POST['nick']);
$nick=mysql_escape_string($nick);
$nick=mysql_escape_string(htmlentities($_POST['nick']));
Ich riskier mal die Aussage, dass Variante 1 am schnellsten ausgeführt wird.
echo $begrüßung;
Was ist an schnellsten von der Verarbeitung her:
Bau dir ein Script und miss die Zeiten selbst (Stichwort microtime())[*]
$nick=mysql_escape_string(htmlentities($_POST['nick']));
Warum möchtest du HTML-Entities in die Datenbank schreiben? Daten, die nicht in Rohform vorliegen lassen sich schlecht weiterverarbeiten.
Außerdem solltest du mysql_real_escape_string() statt der Variante ohne "real" nehmen. (Gründe stehen im PHP-Handbuch.)
echo "$verabschiedung $name";
[*] Für PHP 5. microtime() arbeitet unter PHP 4 anders und müsste angepasst werden.
<pre>
<?php
$loop = 1;
// Initialisierung, falls erforderlich
// ...
$start = microtime(true);
for ($i = 0; $i < $loop; $i++) {
// Test-Code 1
}
$time = microtime(true);
for ($i = 0; $i < $loop; $i++) {
// Test-Code 2
}
$end = microtime(true);
printf("Zeit 1: %0.10f\n", $time - $start);
printf("Zeit 2: %0.10f", $end - $time);