RainDigital
Member
مي خوام آرورم آروم تو طول تابستون بتركونم
ـــــــــــــــــــــــــــــــــــــــــــــــــــ
در اين قسمت به ساخت يك كلاس Timer مي پردازيم كه كاربردهاي زيادي مي تواند داشته باشد.براي مثال براي اندازه گيري زمان ايجاد يك صفحه (Page Generation Time) كه در آن Query هاي زيادي وجود دارد، مي توان از اين كلاس استفاده نمود و با بهينه سازي اين Query ها، زمان ايجاد صفحه را كاهش داد. در زير كد مربوط به اين كلاس آورده شده است:
تحليل كد: اين كلاس دو متد (تابع عضو) شروع و پايان دارد كه دقيقا كار يك زمان سنج را انجام مي دهد.
تابع ()microtime يكي از توابع پركاربردphp مي باشد كه زمان را به صورت رشته"msec sec" بر مي گرداند كه sec زمان جاري اندازه گيري شده از مبدا زمان UNIX مي باشد.(0:00:00 January 1, 1970 GMT)
msec هم بخش مربوط به مايكرو ثانيه مي باشد. توسط تابع explode و مشخص كردن كاراكتر جداكننده اين دوبخش را از هم جدا مي كنيم و در آرايه اي قرار مي دهيم. با جمع كردن اين دو بخش، زمان جاري را به صورت مايكرو ثانيه بدست مي آوريم. پارامتر دوم تابع ()round ،مشخص مي كند كه عدد اعشاري مورد نظر تا چند رقم round شود.
استفاده از كلاس Timer :براي اندازه گيري زمان ايجاد يك صفحه، در ابتداي آن كد زير را مي نويسيم و يك Object از روي class خود ايجاد مي كنيم:
در انتهاي برنامه خود هم تابع stop از كلاس Timer را فراخواني مي كنيم:
[/PHP]

ـــــــــــــــــــــــــــــــــــــــــــــــــــ
در اين قسمت به ساخت يك كلاس Timer مي پردازيم كه كاربردهاي زيادي مي تواند داشته باشد.براي مثال براي اندازه گيري زمان ايجاد يك صفحه (Page Generation Time) كه در آن Query هاي زيادي وجود دارد، مي توان از اين كلاس استفاده نمود و با بهينه سازي اين Query ها، زمان ايجاد صفحه را كاهش داد. در زير كد مربوط به اين كلاس آورده شده است:
PHP:
class microTimer {
function start() {
global $starttime;
$mtime = microtime ();
$mtime = explode (' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
$starttime = $mtime;
}
function stop() {
global $starttime;
$mtime = microtime ();
$mtime = explode (' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
$endtime = $mtime;
$totaltime = round (($endtime - $starttime), 5);
return $totaltime;
}
}
تابع ()microtime يكي از توابع پركاربردphp مي باشد كه زمان را به صورت رشته"msec sec" بر مي گرداند كه sec زمان جاري اندازه گيري شده از مبدا زمان UNIX مي باشد.(0:00:00 January 1, 1970 GMT)
msec هم بخش مربوط به مايكرو ثانيه مي باشد. توسط تابع explode و مشخص كردن كاراكتر جداكننده اين دوبخش را از هم جدا مي كنيم و در آرايه اي قرار مي دهيم. با جمع كردن اين دو بخش، زمان جاري را به صورت مايكرو ثانيه بدست مي آوريم. پارامتر دوم تابع ()round ،مشخص مي كند كه عدد اعشاري مورد نظر تا چند رقم round شود.
استفاده از كلاس Timer :براي اندازه گيري زمان ايجاد يك صفحه، در ابتداي آن كد زير را مي نويسيم و يك Object از روي class خود ايجاد مي كنيم:
PHP:
//در قسمت آغازين كد برنامه شما
$Timer = new microTimer;
$Timer->start();
PHP:
//در انتهاي كد برنامه
echo"<!-- execution time: ".$Timer->stop()." -->";
آخرین ویرایش: