実行中の PHP スクリプト内の各要素は、それぞれがメモリ上に何らかの領域を占有しています。ローカル変数のための領域、配列の各要素やハッシュテーブルを収めるための領域、文字列のための領域、オブジェクトやそのプロパティを収めるための領域。実行中に様々な領域が確保され、そして不要になると解放されたり、意外とスクリプト終了まで解放されなかったりします。
PHP には標準の組み込み関数として memory_get_usage() や memory_get_peak_usage() といった関数があり、呼び出し時点でのメモリ使用量や実行開始からのピーク値を得ることができます。しかし、これらを呼んでも「どこで」「何が」「何バイト」メモリを使っているかまでは追えません。
このトークではスクリプト内の各要素について、処理系内で何がどうメモリを消費するかを時間の許す限り1つ1つ手当り次第に解説します。