我正在尝试在数组下面填充但是收到错误:可捕获的致命错误:类stdClass的对象无法在第40行的D:\ Apache24 \ htdocs \ services \ xxxx.php中转换为字符串 排列 ( [0] => stdClass对象 ( [actor_id] => 2 [first_name] =>缺口 [last_name] =>沃尔伯格 [last_update] => 2006-02-15 04:34:33 )
[1] => stdClass Object
(
[actor_id] => 3
[first_name] => ED
[last_name] => CHASE
[last_update] => 2006-02-15 04:34:33
)
[2] => stdClass Object
(
[actor_id] => 4
[first_name] => JENNIFER
[last_name] => DAVIS
[last_update] => 2006-02-15 04:34:33
)
[3] => stdClass Object
(
[actor_id] => 5
[first_name] => JOHNNY
[last_name] => LOLLOBRIGIDA
[last_update] => 2006-02-15 04:34:33
)
[4] => stdClass Object
(
[actor_id] => 6
[first_name] => BETTE
[last_name] => NICHOLSON
[last_update] => 2006-02-15 04:34:33
)
[5] => stdClass Object
(
[actor_id] => 7
[first_name] => GRACE
[last_name] => MOSTEL
[last_update] => 2006-02-15 04:34:33
)
[6] => stdClass Object
(
[actor_id] => 8
[first_name] => MATTHEW
[last_name] => JOHANSSON
[last_update] => 2006-02-15 04:34:33
)
[7] => stdClass Object
(
[actor_id] => 9
[first_name] => JOE
[last_name] => SWANK
[last_update] => 2006-02-15 04:34:33
)
[8] => stdClass Object
(
[actor_id] => 10
[first_name] => CHRISTIAN
[last_name] => GABLE
[last_update] => 2006-02-15 04:34:33
)
[9] => stdClass Object
(
[actor_id] => 11
[first_name] => ZERO
[last_name] => CAGE
[last_update] => 2006-02-15 04:34:33
)
)
我正在使用以下功能: public function encodeHtml($ responseData){
$htmlResponse = "<table border='1'>";
foreach($responseData as $key=>$value) {
$htmlResponse .= "<tr><td>". $key. "</td><td>". $value. "</td></tr>";
}
$htmlResponse .= "</table>";
return $htmlResponse;
}
我在这里做错了什么。请帮帮我。
答案 0 :(得分:1)
您正在尝试将整个对象打印为字符串:
$htmlResponse .= "<tr><td>". $key. "</td><td>". $value. "</td></tr>";
您应该分别打印每个对象变量,例如打印actor的first_name:
$htmlResponse .= "<tr><td>". $key. "</td><td>". $value->first_name. "</td></tr>";
答案 1 :(得分:0)
当从responseData使用foreach时,你得到每个元素。因此,价值将成为一个阶级,何时
$htmlResponse .= "<tr><td>". $key. "</td><td>". $value. "</td></tr>";
$ value是一个类,因为错误表示无法将其转换为字符串。