Hallo Twilo,
folgende Zeile finde ich z.B. viel übersichlicher
echo '<?xml version="1.0" encoding="UTF-8"?>';
- muss man dort die " nicht escapen
- ist diese Anweisung sogar ein paar Millisekunden schneller ;-)
Wie Ashura schon gesagt hat, fehlt bei dir ein Zeichen für eine neue Zeile.
Fragt sich nun, was schneller ist:
echo '<?xml version="1.0" encoding="UTF-8" ?>'."\n";
oder
echo "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n";
Mit der Übersichtlichkeit hast du Recht, die Geschwindigkeit müsste man mal automatisiert ermitteln lassen. Und das habe ich jetzt gerade auch mal machen lassen, folgendes Skript:
<?php
header("Content-type: text/plain");
echo "Starte Geschwindigkeitstest...\n";
$times = 1000000;
$begintime = explode(" ", microtime());
$begintime = (float)$begintime[0] + (float)$begintime[1];
for($i=0; $i<$times; $i++)
{
echo '<?xml version="1.0" encoding="UTF-8" ?>'."\n";
}
$endtime = explode(" ", microtime());
$endtime = (float)$endtime[0] + (float)$endtime[1];
$firsttime = $endtime - $begintime;
$begintime = explode(" ", microtime());
$begintime = (float)$begintime[0] + (float)$begintime[1];
for($i=0; $i<$times; $i++)
{
echo "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n";
}
$endtime = explode(" ", microtime());
$endtime = (float)$endtime[0] + (float)$endtime[1];
$secondtime = $endtime - $begintime;
echo "Erster Durchlauf: $firsttime Sekunden\n";
echo "Zweiter Durchlauf: $secondtime Sekunden\n";
echo "Prozentual (1/2): ". $firsttime/$secondtime ."\n";
?>
Ich habe das Skript mehrfach laufen lassen, aber der Mittelwert des prozentualen Anteils bleibt größer als 1, was bedeutet dass die erste Methode (deine) länger braucht als meine:
---schnipp---
marc@linux:~> for (( I=1; $I <= 10; I++ )); do php speedtest.php | grep Prozentual; done
Prozentual (1/2): 1.07741338453
Prozentual (1/2): 1.06501519787
Prozentual (1/2): 1.07005052912
Prozentual (1/2): 1.06694041504
Prozentual (1/2): 1.07399288338
Prozentual (1/2): 1.0689044657
Prozentual (1/2): 1.06863608119
Prozentual (1/2): 0.98358096932
Prozentual (1/2): 1.1488245319
Prozentual (1/2): 1.06209438915
marc@linux:~>
---schnapp---
Damit wäre dein zweites Argument wiederlegt - das erste bleibt natürlich unumstritten! ;-)
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/