可捕获致命错误:类stdClass的对象无法转换为字符串
问题在于: echo $village_id. "-" .$wg_village;
echo $village_id. "-" .$wg_village;
它返回:
可捕获的致命错误:类stdClass的对象无法转换为第70行中的/files/function_20.php中的字符串
在第70行,我发布了那里的代码,函数完美地工作,只是返回一个带有错误的空白页面。
那条线有什么问题? 我该如何纠正?
编辑: var_dump
$village_id
和$wg_village
:
string(5) "80784"
object(stdClass)#25 (35) {
["id"]=> string(5) "80784"
["name"]=> string(7) "NewName"
["x"]=> string(3) "-99"
["y"]=> string(3) "-14"
["kind_id"]=> string(1) "5"
["user_id"]=> string(1) "1"
["rs1"]=> int(36000) ["rs2"]=> int(36000)
["rs3"]=> int(36000) ["rs4"]=> int(36000)
["workers"]=> string(2) "51"
["troop_keep"]=> string(1) "0"
["time_update_rs1"]=> string(19) "2014-05-09 01:45:30"
["time_update_rs2"]=> string(19) "2014-05-09 01:45:30"
["time_update_rs3"]=> string(19) "2014-05-09 01:45:30"
["time_update_rs4"]=> string(19) "2014-05-09 01:45:30"
["nation_id"]=> string(1) "2" ["merchant_underaway"]=> string(1) "0"
["child_id"]=> string(0) "" ["cp"]=> string(3) "104"
["cpupdate_time"]=> string(19) "2014-05-08 21:49:55"
["krs1"]=> string(1) "1"
["krs2"]=> string(1) "1"
["krs3"]=> string(1) "1"
["krs4"]=> string(1) "1"
["faith"]=> string(1) "3"
["faith_time"]=> string(19) "2014-05-07 22:05:44"
["dateCreate_vila"]=> string(19) "2014-05-05 20:38:26"
["capa123"]=> int(36000)
["capa4"]=> int(36000)
["speedIncreaseRS1"]=> float(1000)
["speedIncreaseRS2"]=> float(600)
["speedIncreaseRS3"]=> float(800)
["speedIncreaseRS4"]=> float(1200)
["speedIncreaseRS4Real"]=> float(1149)
}
如果你正在引用一个object
你不能把它当作一个string
。 尝试将其倾倒出来,看看你是否可以引用一个属性
var_dump($village_id);
var_dump($wg_village);
所以现在我们有一个转储,让我们尝试访问这些属性
echo $village_id. "-" .$wg_village->name;
应该失败的唯一原因是该属性是protected
或private
,但这看起来像一个数据库结果集。
您必须使用->
运算符来引用属性。 你不能直接打电话给他们。 这个线程更详细地描述了这一点。
首先,您试图echo
对象的内容。 因此,首先执行以下操作以查看$village_id
以及$wg_village
。 您刚刚使用了var_dump
但我更愿意将print_r
与<pre>
标记一起用于可读性:
echo '<pre>';
print_r($village_id);
echo '</pre>';
echo '<pre>';
print_r($wg_village);
echo '</pre>';
所以你可以尝试一下,使事情更清晰。 但从我读的内容看来, $village_id
是一个值为80784
的字符串,而$wg_village
是一个对象。 现在的事情是,你想从$wg_village
对象得到什么?
您需要像这样访问数据:
echo $wg_village->id;
echo $wg_village->name;
echo $wg_village->x;
echo $wg_village->y;
etc…
链接地址: http://www.djcxy.com/p/58149.html
上一篇: Catchable fatal error: Object of class stdClass could not be converted to string
下一篇: >' in PHP?