【发布时间】:2019-11-18 11:43:20
【问题描述】:
我在循环对象数组并在某些条件下显示其中的数据时遇到问题。
我希望网页显示以下内容:
<p>John Doe</p> <p>William Green</p> <p>Jane Smith</p>
我知道如何通过定义 $user[0]->first_name 来做到这一点。 $user[0]->last_name 特别是,但我需要一种让代码循环并使用 user_id 属性作为唯一标识符动态显示名称的方法。
对于数组中 user_id 为 1 的所有对象,返回“这些值”。对于 user_id 为 2 的数组中的所有对象,返回“这些值”。依此类推……循环遍历每个唯一的 user_id。
这里是对象数组的一个var_dump:
array(4)
{ [0]=> object(stdClass)#4336 (4)
{
["umeta_id"]=> string(1) "1"
["user_id"]=> string(1) "1"
["meta_key"]=> string(10) "first_name"
["meta_value"]=> string(4) "John"
}
[1]=> object(stdClass)#4333 (4)
{
["umeta_id"]=> string(1) "2"
["user_id"]=> string(1) "1"
["meta_key"]=> string(9) "last_name"
["meta_value"]=> string(3) "Doe"
}
[2]=> object(stdClass)#4334 (4)
{
["umeta_id"]=> string(1) "3"
["user_id"]=> string(1) "2"
["meta_key"]=> string(10) "first_name"
["meta_value"]=> string(4) "Jane"
}
[3]=> object(stdClass)#4334 (4)
{
["umeta_id"]=> string(1) "4"
["user_id"]=> string(1) "2"
["meta_key"]=> string(9) "last_name"
["meta_value"]=> string(5) "Smith"
}
[4]=> object(stdClass)#4334 (4)
{
["umeta_id"]=> string(1) "5"
["user_id"]=> string(1) "3"
["meta_key"]=> string(10) "first_name"
["meta_value"]=> string(7) "William"
}
[5]=> object(stdClass)#4334 (4)
{
["umeta_id"]=> string(1) "6"
["user_id"]=> string(1) "3"
["meta_key"]=> string(9) "last_name"
["meta_value"]=> string(5) "Green"
}
}
当我在网页上输出信息时,我希望它看起来像这样:
<p>John Doe</p> <p>William Green</p> <p>Jane Smith</p>
也许我需要遍历对象并基于 user_ids 构建新数组?请不要提供带有 echo 或 print_r 的代码。此项目只能使用“return”。
【问题讨论】:
标签: php mysql arrays wordpress object