• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
بدست آوردن زمان لود هر سایت دلخواه.
#1
Question 
با سلام خدمت دوستان

من میخوام یه تابع بنویسم که آدرس هر وبسایتی رو که به اوم بدم، بتونه زمان لود شدن اون رو بهم بده.
در حال حاضر با جستجو هایی که کردم فهمیدم ابتدای کد های صفحه باید کد زیر
کد پی‌اچ‌پی:
<?php
$time 
microtime();
$time explode(' '$time);
$time $time[1] + $time[0];
$start $time;
?>
و در انتهای کدهای صفحه ای که قرار زمان لود اون رو حساب کنم، کد زیر رو قرار دهم.
کد پی‌اچ‌پی:
<?php
$time 
microtime();
$time explode(' '$time);
$time $time[1] + $time[0];
$finish $time;
$total_time round(($finish $start), 4);
echo 
'Page generated in '.$total_time.' seconds.';
?>
ولی خب فرض کنیم که من بخوام زمان لود یه سایت مثله yahoo رو اندازه بگیرم، چطور میتونم وقتی کدهای اون رو ندارم ، اینکار رو انجام بدم؟!!! راه دیگه اضافه کردن اون وبسایت، وسط این کدها چیه؟

اگه راه حل دیگه ای هم هست، منو راهنمایی بفرمایید.
متشکرم.
  پاسخ
تشکر شده توسط :
#2
میشه البته به طور نسبی .
میتونی سورس موجود صفحه رو با curl یا file_get_contents بگیری و مدت زمان شروع و پایان فرآیند رو محاسبه کنی .
وبلاگ rezaonline.net/blog
سفارش برنامه نویسی reza.biz
Php , mysql , postgresql , redis , Yii and ... Cool
  پاسخ
تشکر شده توسط : hidensoft elias.f
#3
متشکرم از پاسختون
ولی اگه به جای نسبی بخوام دقیق باشه، باید چی کار کنم؟
یعنی با این توابع میشه به محتوا دسترسی پیدا کرد؟چجوری؟!
  پاسخ
تشکر شده توسط :
#4
باید بتونی جاوا اسکریپت ها سی اس اس ها و خیلی چیز های دیکه رو هم لود کنید. تا زمان دقیق بدست بیاد.
  پاسخ
تشکر شده توسط : elias.f
#5
timing attack داری میزنی به رگ ؟ Big Grin
فکر کنم یه چیزی به ذهنم رسیده .

شما دو کار انجام بده
یک بار از سایت یاهو ping بگیر و بزار تو یه متغییر
یک بار هم با file_get_contents کل محتوا رو بگیر و با کد های بالا زمانش رو بدست بیار
و این زمانو منهای زمان پینگ بکن ... و به احتمال زیاد زمان دقیق رو نشون میده .


اگه خودت سایت داری اینو حتما روی سایت خودت تست کن و نتیجشو بیا اینجا بازگو کن .
و با کد زیر میتونی ping بگیری

کد پی‌اچ‌پی:
<?php


$cmdping 
= `ping www.yahoo.com`;
preg_match('/Average ?\= ?([0-9]{1-3})ms/',$cmdping ,$ping );
echo 
$ping[1];

?>
  پاسخ
تشکر شده توسط : Reza


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان