Ben performans zorlayıcı bir argüman ya da yolu olduğunu sanmıyorum. Benim Mac, ben aşağıdaki testleri koştu.
İlk 10.000 şey ama bir değişken değildir, bir dosya içerir:
<?php
$mtime = microtime();
$mtime = explode(' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
$starttime = $mtime;
for ($i = 0; $i < 10000; $i++) {
include("foo.php");
}
$mtime = microtime();
$mtime = explode(" ", $mtime);
$mtime = $mtime[1] + $mtime[0];
$endtime = $mtime;
$totaltime = ($endtime - $starttime);
echo 'Rendered in ' .$totaltime. ' seconds.';
?>
Her zaman çalıştırmak için yaklaşık 0,58 saniye sürdü. (Yani 10.000 içerir var, unutmayın.)
Sonra veritabanını 10.000 kez sorguları başka bir senaryo yazdı. Bu sadece bir SELECT NOW()
yok, herhangi bir gerçek veri seçmez.
<?php
mysql_connect('127.0.0.1', 'root', '');
mysql_select_db('test');
$mtime = microtime();
$mtime = explode(' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
$starttime = $mtime;
for ($i = 0; $i < 10000; $i++) {
mysql_query("select now()");
}
$mtime = microtime();
$mtime = explode(" ", $mtime);
$mtime = $mtime[1] + $mtime[0];
$endtime = $mtime;
$totaltime = ($endtime - $starttime);
echo 'Rendered in ' .$totaltime. ' seconds.';
?>
Bu komut benim bilgisayarda her zaman çalıştırmak için yaklaşık 0.76 saniye sürer. Açıkçası özel durumda bir fark yaratabilir bir çok faktör vardır, ancak içerir kullanarak karşı MySQL sorguları çalıştıran anlamlı performans farkı yoktur. (Benim test MySQL bağlantı yükü içermiyordu unutmayın - sadece bulunan verileri almak için veritabanına bağlanırken eğer, bu bir fark olur.)