【发布时间】:2012-01-24 01:04:12
【问题描述】:
我不知道为什么会这样,但也许这里有人知道。我遇到了 PHP method_exists() 函数的问题。我将一个对象和方法名称作为字符串传入,如下所示:
method_exists($question, "id")
我对它做了一个 var_dump,它说它返回 false
echo var_dump(method_exists($question, "id")); // returns bool(false)
但这是奇怪的部分。我用以下内容替换该行:
echo $question->id; // returns the id number
如果objects方法有效,它怎么会返回false呢?
我对对象本身做了一个 var_dump,所以你可以看看
object(stdClass)#19 (11) {
["id"]=> string(1) "4"
["question"]=> string(67) "This is a question?"
["answer_id"]=> string(1) "0"
["status"]=> string(6) "active"
["author_id"]=> string(1) "1"
["created_on"]=> string(10) "1323221575"
["last_edited"]=> string(10) "1324335140"
["order"]=> string(6) "random"
["answer_position"]=> string(1) "1"
["first_name"]=> string(3) "Joe"
["last_name"]=> string(8) "McMurray" }
您可以立即看到它的第一个名为“id”。那么为什么返回false呢?
谢谢
【问题讨论】:
-
你不是在调用函数吗?
id是一个属性,而不是一个方法。 -
我觉得这很愚蠢,哈哈。谢谢。
-
echo var_dump是错字吗? var_dump 已经输出到屏幕
标签: php function codeigniter methods