сделал один скрипт, который грузит свои модули инклудами причем не один раз оказалось что рано или поздно этот скрипт умирает, в отличие от предыдущего, где таких злостных инклудов не было решил проверить - сколько сжирают инклуды и есть ли смысл обернуть их содержимое в функции, чтобы инклудить все модули один раз при загрузке скрипта вот тут 2 примера - с инклудами и без них http://www.sendspace.com/file/i4u5a4 но почему-то выдает расход памяти и времени практически одинаковый. microtime() тоже пробовал, там получаются ещё и отрицательные значения так может я как-то неграмотно замеряю эти параметры? или инклуды на самом деле можно делать по сто раз и это никак не повлияет на стабильность работы пхп? (пхп 5.2)
лучше содержимое многоразовых инклудов оберни в функции, потому что когда ты инклудишь, пхп добавляет к коду код инклуда и получается у тебя один и тот же код занимает кучу памяти.
ну я это и предполагал но как это увидеть? объем занятой памяти не увеличивается при любом кол-ве итераций хочется своими глазами увидеть что происходит
PHP: <?php $time_start = getmicrotime(); $mem = memory_get_usage(); include "inc1.php"; include "inc2.php"; include "inc3.php"; for($i = 0; $i < 10000; $i++) { inc1(); inc2(); inc3(); } echo 'time : ' . getmicrotime() - $time_start; $mem = (memory_get_usage() - $mem - sizeof($mem)); echo '<br>'; echo 'memory : ' . ($mem / 1024) . 'kb'; function getmicrotime() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); }
GalaX твоя функция PHP: function getmicrotime() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } делает тоже самое что microtime(true)