Php foreach循环和sql中多个值的一个键
我很难用key(class_id)创建一个数组,在这个key中有很多用户的id。我有一个函数,$ids是一个简单的数字数组。 我正试图得到这样的东西:Php foreach循环和sql中多个值的一个键,php,loops,foreach,Php,Loops,Foreach,我很难用key(class_id)创建一个数组,在这个key中有很多用户的id。我有一个函数,$ids是一个简单的数字数组。 我正试图得到这样的东西: array => 1 (class_id) => 0=> 'user_id' 1=> 'user_id', 2 (class_id) => 0=> 'user_id' 1=> 'user_id' 现在我返回这个(只有一个用户id,其中应该有更多: a
array =>
1 (class_id) =>
0=> 'user_id'
1=> 'user_id',
2 (class_id) =>
0=> 'user_id'
1=> 'user_id'
现在我返回这个(只有一个用户id,其中应该有更多:
array =>
1=> 'user_id'
2=> 'user_id'
static function getUsersIdsByClassIds($ids)
{
$userIds = [];
foreach($ids as $classId) {
$object = self::select('user_id')
->where('class_id', $classId)
->get();
foreach($object as $sth){
$userIds[$classId]=$sth->user_id;
}
}
return $userIds;
}
我无法修复它以实现我想要的结构。在这里
foreach($object as $sth){
$userIds[$classId] = $sth->user_id;
}
您在每次迭代时都会覆盖该值。但实际上您希望添加一个新条目:
foreach($object as $sth){
// here it is
$userIds[$classId][] = $sth->user_id;
}
在这里
foreach($object as $sth){
$userIds[$classId] = $sth->user_id;
}
您在每次迭代时都会覆盖该值。但实际上您希望添加一个新条目:
foreach($object as $sth){
// here it is
$userIds[$classId][] = $sth->user_id;
}
$userIds[$classId][=$sth->user\u id;
-你需要添加它,而不是覆盖它。我的上帝,这么简单!添加答案来接受它$userIds[$classId][=$sth->user\u id;
-你需要添加它,而不是覆盖它。我的上帝,这么简单!添加答案来接受它