PHP5有一个“魔术方法”__call()
,它可以在调用未定义方法时调用的任何类上定义 - 它大致相当于Ruby的method_missing
或Perl的AUTOLOAD
。是否有可能在旧版本的PHP中做这样的事情?有没有办法在PHP4中模拟PHP5的__call()魔术方法?
2
A
回答
1
这篇文章,Using Method Call Overloading in PHP 4在DevShed上可能会有所帮助。
0
我记得使用它,和谷歌上搜索的一点点暗示
function __call($method_name, $parameters, &$return)
{
$return_value = "You called ${method_name}!";
}
的成员函数将做的工作。
2
我错过的最重要的一点是PHP4中存在__call
,但是您必须通过调用overload()
来按类别启用它,如php docs here所示。 不幸的是,__call()函数签名在PHP4和PHP5之间是不同的,并且似乎没有办法在两者中运行实现。
相关问题
- 1. PHP关于子类魔术方法__call
- 2. 有没有办法模拟QGroupVBoxLayout?
- 3. 有没有办法一般地用Moq模拟DbSet.Find方法?
- 4. 魔术函数__call()函数?
- 5. JavaScript中的魔术方法
- 6. 魔术方法在Python
- 7. 有没有办法升级PHP4的mysql客户端?
- 8. 模拟测试和PHP的魔术__get方法
- 9. 有没有办法在UIScrollView中模拟scrollViewDidScrollToBottom?
- 10. 有没有办法在JavaScript中模拟点击警报?
- 11. 为什么数组中的数据不能用于php的魔术方法__call()?
- 12. 有没有办法在没有.save()方法的猫鼬中定义模型?
- 13. 有没有办法在MySQL的第二列上模拟auto_increment?
- 14. 有没有办法模拟Apache中的缓慢连接?
- 15. 有没有办法模拟Windows 8中的触摸事件?
- 16. 有没有办法在Textmate中从方法跳转到方法?
- 17. 当调用现有方法时执行(魔术)方法
- 18. 有没有办法减慢模拟器上的所有动画?
- 19. PHP魔术方法和空
- 20. 有没有在Android Studio中模拟GPS硬件的方法?
- 21. 有没有办法挂钩Java方法?
- 22. 有没有在Django模型中模拟虚拟继承的理智方法?
- 23. 有没有办法让ON_CALL模拟功能“有趣”?
- 24. 有没有办法在Python中的类方法中修改类?
- 25. Python的等价物__call()魔法?
- 26. Python中的特殊(魔术)方法
- 27. 静态对象中的魔术方法
- 28. 有没有办法在java中执行“andand”技术?
- 29. 有没有办法在Lucene中使用RegexpQuery搜索术语?
- 30. 有没有办法在XBL中创建私有方法?
我怀疑jes5199在询问是否有人知道类似__call方法的时候正在考虑__call方法......我认为“在PHP4中”是问题的关键部分。 – 2008-09-16 20:13:58