gpt4 book ai didi

php - 在加入时创建子数组而不是新条目

转载 作者:行者123 更新时间:2023-11-30 22:56:41 25 4
gpt4 key购买 nike

我有 4 个讲座,每个讲座都有自己的名字:

jbc2014_lezingen

the lectures

然后每节课都会有问题,在这种情况下每节课有 2 个问题:

jbc2014_vr​​agen

the questions for the lectures

我使用这个查询:

$query = "SELECT * FROM jbc2014_lezingen
INNER JOIN jbc2014_vragen
ON jbc2014_lezingen.id=jbc2014_vragen.lezing_id";

结果是这样的:

[0] => Array
(
[id] => 1
[lezing_naam] => lezing 1
[lezing_id] => 1
[vraag] => foobar?
)

[1] => Array
(
[id] => 2
[lezing_naam] => lezing 1
[lezing_id] => 1
[vraag] => foobar?
)
etc.

所以数组大小是基于问题的数量,而不是讲座的数量。我想要这样的东西:

[0] => Array
(
[id] => 1
[lezing_naam] => lezing 1
[lezing_id] => 1
[questions] Array (
[0] => [vraag] => foobar?
[1] => [vraag] => foobar?
)


)

问题在数组中的位置(vraag 表示问题)。如何做到这一点?

稍后,我还需要问题中数组中的多项选择答案。但我认为在修复此问题后,这并不难。

最佳答案

你能做的最接近的事情是这样的——

SELECT jbc2014_lezingen.id as lezing_id, 
GROUP_CONCAT(vraag) as vraags
FROM jbc2014_lezingen
INNER JOIN jbc2014_vragen
ON jbc2014_lezingen.id=jbc2014_vragen.lezing_i
GROUP BY jbc2014_lezingen.id

然后用

获取值
explode(",",$row['vraags']);

或者用这样的东西创建另一个数组

foreach($raw_result as $key => $value){
$new_array[$key]['lezing_id'] = $value['lezing_id'];
$new_array[$key]['vraags'] = explode(",",$value['vraags']);
}

关于php - 在加入时创建子数组而不是新条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26068304/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com