【发布时间】:2013-12-14 21:38:17
【问题描述】:
假设我在每个用户的个人资料中都列出了这些信息:
UserA(列表)= 狗、猫、羊、鸟、鸭
UserB (list) = 斑马、狮子、猎豹、豹子
UserC (list) = 鳄鱼、蜥蜴、青蛙、乌龟
我有这个功能:
foreach($users as $user){
$user_list = $user->list;
$user_list_array = explode(', ', $user_list);
foreach($user_list_array as $user_list_item){
}
}
}
这就是我难过的地方...如何将所有列表组合成一个逗号分隔的大列表,然后将该完整列表分解为一个我可以使用的数组?
编辑:以下是我正在测试的确切示例列表以及使用以下代码得到的结果:
名单:
ListA:唱歌、说唱、跳舞、滑稽短剧、烹饪、清洁、系鞋带、无腿跳
ListB:品酒、款待、商业管理、财务规划、商业营销、专业驾驶
代码:
<?php
$roles = array('employee', 'administrator');
/* Loop through users to search for the admin and employee users. */
foreach( $roles as $role ) {
$this_role = "'[[:<:]]".$role."[[:>:]]'";
$query = "SELECT * FROM $wpdb->users WHERE ID = ANY (SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'wp_capabilities' AND meta_value RLIKE $this_role) ORDER BY user_nicename ASC LIMIT 10000";
$users = $wpdb->get_results($query);
if ($users){
$output = array();
foreach($users as $user){
$curuser = get_userdata($user->ID);
$user_list = $curuser->skills;
$user_list_array = explode(', ', $user_list);
foreach($user_list_array as $user_list_item){
$output[] = $user_list_item;
}
}
echo implode(', ', $output);
}
}?>
结果:
唱歌、说唱、跳舞、滑稽短剧、烹饪、清洁、系鞋带、无腿跳、、、、、、、品酒、款待、商业管理、财务规划、商业营销、专业驾驶
【问题讨论】:
-
这是一个伪算法还是您在询问特定语言?预期的结果是什么? “explode”是库函数吗?
-
抱歉含糊不清。这只是我在 Wordpress 中尝试做的一个通用示例,它在 SQL 中查询每个用户的“列表”元值。我想将所有用户的列表组合成一个我可以使用的单个“标签”的大数组。
标签: php arrays foreach explode comma