PHP 5.4 ではクラスのインスタンスメソッド内で定義したクロージャーには $this が暗黙的に束縛されてしまうため、次のコードは 5.3 と 5.4 で動作が異なります。 <?php class AAA { public function getFunction() { // クロージャー! return function ($a, $b) { return $a + $b; }; } public function __destruct() { echo __METHOD__ . PHP_EOL; } } class BBB { public function hoge() { echo __METHOD__ . " BEGIN" . PHP_EOL; $aa = new AAA; $func = $aa->getFunction(); echo __METHOD__ . " EN