问题在于:echo $village_id. "-" .$wg_village;
它返回:
捕获致命错误:第70行的/files/function_20.php中无法将类stdClass的对象转换为字符串
在第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)
}
答案 0 :(得分:2)
如果您引用object
,则无法将其视为string
。尝试将其转储出去,看看你是否可以在
var_dump($village_id);
var_dump($wg_village);
现在我们有一个转储,让我们尝试访问这些属性
echo $village_id. "-" .$wg_village->name;
应该失败的唯一原因是属性是protected
还是private
,但这看起来像数据库结果集。
您必须使用->
运算符引用属性。你不能直接打电话给他们。 This thread更详细地描述了这一点。
答案 1 :(得分:0)
首先,您尝试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…