PHP есть «сборщик мусора» (программа очистки памяти) и довольно сложный диспетчер памяти. Количество памяти, используемой вашим скриптом, может увеличиваться и уменьшаться в процессе его выполнения. Получить сведения о текущем использовании памяти можно, используя функцию memory_get_usage(), а чтобы узнать о наибольшем объеме памяти в любой точке, можно воспользоваться функцией memory_get_peak_usage().
echo "Initial: ".memory_get_usage()." bytes \n";
02.
/* prints
03.
Initial: 361400 bytes
04.
*/
05.
06.
// let's use up some memory
07.
for ($i = 0; $i < 100000; $i++) {
08.
$array []= md5($i);
09.
}
10.
11.
// let's remove half of the array
12.
for ($i = 0; $i < 100000; $i++) {
13.
unset($array[$i]);
14.
}
15.
16.
echo "Final: ".memory_get_usage()." bytes \n";
17.
/* prints
18.
Final: 885912 bytes
19.
*/
20.
21.
echo "Peak: ".memory_get_peak_usage()." bytes \n";
22.
/* prints
23.
Peak: 13687072 bytes
24.
*/