0

是否可以定义一个在未定义对象时调用的函数?所以我可以$makeUpOntheFlyObjectNames->something();在函数中获取对象名称,函数名称和它的参数数组,或者如果没有,则为空数组。它试图调用什么?有一个想法$varName->length();在 V5.x 中为字符串和东西制作类似的东西。试图用谷歌搜索,但得到的东西class_exists和东西一样,所以认为人类会有更好的答案。但我认为这是不可能的,只是想在这里检查一下。

因此,如果找不到对象,并且正在调用长度,请检查它是否是字符串,然后返回 strlen 的结果,否则如果它不是字符串,则模拟 php 自己的错误。只是我有一些想法,但不确定是否甚至可以进行第一部分的检测。

4

1 回答 1

0

您可以尝试以下方法:

$objName = 'test';
//check if the object exists
if(isset($$objName)){
//object exists...
}
else{
//do what you want here
}

尝试“按原样”运行它或在此代码之前添加一行,例如:

$test = array(1=>'a',2=>'b');
$objName = 'test';
...

看看你是如何“落入”“if”而不是“else”的

于 2013-01-27T08:05:30.557 回答