Мне нужно определить, как долго работает функция PHP.
Каковы некоторые параметры, чтобы узнать, сколько времени требуется для выполнения PHP-кода?
Я использую zend framework.
Вызовите microtime(true)
для получения текущего времени с разрешением в миллисекундах.
<?php $startTime = microtime(true); /*stuff is going on*/ echo "Elapsed time is: ". (microtime(true) - $startTime) ." seconds";
microtime – текущая временная отметка Unix с микросекундами
<?php $time = microtime(TRUE); //...code here... print (microtime(TRUE)-$time). ' seconds';
Вы можете просто использовать стандартный тайм-аут PHP и реализовать функцию выключения .
function say_goodbye() { if (connection_status() == CONNECTION_TIMEOUT) { ... do your special processing to save the process state here ... then formulate a response for the browser } } // function say_goodbye() register_shutdown_function("say_goodbye");
Обратите внимание, что вы можете установить функцию выключения для принятия параметров
РЕДАКТИРОВАТЬ
function say_goodbye($controller1,$controller2) { if (connection_status() == CONNECTION_TIMEOUT) { ... do your special processing to save the process state here ... then formulate a response for the browser } } // function say_goodbye() $ctl1 = new DBController(); $ctl2 = new OPController(); register_shutdown_function("say_goodbye",$ctl1,$ctl2);
Один из быстрых и точных фрагментов, которые я могу порекомендовать.
//Block of my complex code //... echo 'Exact time taken to run: ' . (microtime(true) - $_SERVER['REQUEST_TIME_FLOAT']) . ' seconds';