1--TEST-- 2Observer: Calls that go through zend_call_function are observed 3--SKIPIF-- 4<?php if (!extension_loaded('zend-test')) die('skip: zend-test extension required'); ?> 5--INI-- 6zend_test.observer.enabled=1 7zend_test.observer.observe_all=1 8--FILE-- 9<?php 10function sum($carry, $item) { 11 $carry += $item; 12 return $carry; 13} 14 15$a = [1, 2, 3, 4, 5]; 16// array_reduce() calls zend_call_function() under the hood 17var_dump(array_reduce($a, 'sum')); 18echo 'Done' . PHP_EOL; 19?> 20--EXPECTF-- 21<!-- init '%s%eobserver_zend_call_function_%d.php' --> 22<file '%s%eobserver_zend_call_function_%d.php'> 23 <!-- init sum() --> 24 <sum> 25 </sum> 26 <sum> 27 </sum> 28 <sum> 29 </sum> 30 <sum> 31 </sum> 32 <sum> 33 </sum> 34int(15) 35Done 36</file '%s%eobserver_zend_call_function_%d.php'> 37