之前,我对一个新的缓存封装包写单元测试的时候(该包扩展了Memcached API),我遇到了重写Memcached::get()方法的问题。查看了PHP文档的Memcached::get()方法,有三个参数必须添加到我的扩展签名,当我添加后,却一直得到“… should be compatible with that of Memcached::get()”的错误提示。我尝试着查找这个方法的签名源代码,但是从 PECL文档中没有找到任何有用的东西。于是,我使用PHP的 RelectionClass,看是否能找出哪里丢失了扩展签名从而引起了上述错误。几分钟后,我得出下面的代码片断: