【发布时间】:2013-01-27 07:58:22
【问题描述】:
是否可以定义一个在未定义对象时调用 get 的函数?所以我可以在函数中执行$makeUpOntheFlyObjectNames->something(); 获取对象名称、函数名称和它的参数数组,或者如果没有,则为空数组。它试图调用什么?有一个想法让像 $varName->length(); 这样的东西在 V5.x 中用于字符串和东西。试图用谷歌搜索但得到了class_exists之类的东西,所以认为人类会有更好的答案。但我认为不可能,只是想在这里检查一下。
因此,如果找不到对象,并且正在调用长度,请检查它是否是字符串,然后返回 strlen 的结果,否则如果它不是字符串,则模拟 php 自己的错误.. 只是我的一些想法,但不是确定是否可以进行第一部分检测。
【问题讨论】:
-
你可以使用一些自动加载魔法。
-
恐怕目前这是不可能的,除非你有能力修改你想要这种行为的类(使用
__call魔法方法)。没有任何东西可以全局介入(即使是错误处理函数也不会因缺少方法而触发) -- stackoverflow.com/questions/3456763/… -- stackoverflow.com/questions/2865865/…