Иногда бывает полезно замерять память, которая выделяется на выполнение какого-то процесса. Делается это чаще всего для оптимизации тех самых процессов и таким образом экономить память сервера.
Делается это давольно легко, однако не часто к этому прибегают. Это плохо, так как даже, если в данный момент памяти хватило, то не факт, что в следующий раз ее снова хватит (массив данных может вырасти, память может быть занята другим процессом и так далее). Чтобы замерять память достаточно написать следующий код:
$startMemory = memory_get_usage(); // Измеряемое. Может быть перебор массива или любая другая операция echo (memory_get_usage() - $startMemory) . " bytes\n";
Таким образом мы всегда будем держать наш код и ресурсы под контролем, а это уже скажется на стабильности работы сервера в целом. Если в качестве измеряемого будет перебор массива, то память будет выделяться на одну конкретную иттерацию.
Кстати, таким же образом легко замерить время выполнения скрипта (оба теста лучше запускать в одно время):
$startTime = microtime(true); // Измеряемое. Может быть перебор массива или любая другая операция $endTime = microtime(true); echo ($endTime - $startTime) . " ms\n";