我有一个名为$ result的数组, print_r($ result)的输出如下所示。
Array
(
[0] => Profile Object
(
[id] => 3
[name] => alvis
[parentLink] => ProfileLink Object
(
[href] => web
[type] => data
)
)
[1] => Profile Object
(
[id] => 3
[name] => gorgia
[parentLink] => ProfileLink Object
(
[href] => text
[type] => values
)
)
[2] => Profile Object
(
[id] => 4
[name] => text
[parentLink] => ProfileLink Object
(
[href] => text
[type] => values
)
)
)
我尝试使用以下方式显示名称:
foreach ($results[name] as $key => $value) {
echo $key . ": " . $value."<br>";
}
但是我收到错误不能使用Profile类型的对象作为数组。
当我尝试
时foreach ($results->name as $key => $value) {
echo $key . ": " . $value."<br>";
}
我收到了另一个错误:为foreach()提供的参数无效 是否有显示ID和名称?
答案 0 :(得分:1)
您可以使用foreach
遍历数组中的每个配置文件对象,然后使用->
引用每个配置文件的属性。下面的代码忽略了数组的数字索引,只使用了配置文件对象中的id
和name
。
foreach ($result as $profile) {
echo $profile->id .": ".$profile->name . " <br>";
}
如果你想包括数组的数字索引:
foreach ($result as $index=>$profile) {
echo "(index ". $index .") ".$profile->id.": ".$profile->name." <br>";
}
答案 1 :(得分:1)
您需要使用foreach循环遍历$ result数组,然后使用“ - &gt;”访问“name”属性符号
foreach ($result as $profile) {
print $profile->name;
}
如果要获取配置文件对象的所有属性,则必须使用get_object_vars()。
foreach ($result as $profile) {
$vars = get_object_vars($profile);
foreach ($vars as $key => $var) {
echo $key . ": " . $var."<br>";
// add suitable looping for the ProfileLink object too
}
}