填充PHP中其他数组的关联数组值



如果我有单独的数组w/values用于"questions"one_answers";answers"像这样:

var_dump($questions)

array (size=2)
0 => string 'Question 1' (length=10)
1 => string 'Question 2' (length=10)

var_dump($answers)

array (size=2)
0 => string 'Answer 1' (length=10)
1 => string 'Answer 2' (length=10)

如何使用这些数组来填充"母版"的值?包含"问题"键的关联数组和";answer"所以我可以使用foreach循环轻松输出问题/答案对?我试图循环每个$questions$answers数组来填充$results数组的值-我已经尝试过

foreach ( $questions as $question ) {
$results[] = ['question' => $question];
}

,这会为每个问题创建单独的项,但我不确定如何添加"答案"。将值放入相同的数组项中以创建对。谢谢你的帮助。

不确定我是否正确理解了这个问题,但是array_combine()函数可以做你想做的。

$master = array_combine($questions, $answers);

这将给你:

[
'question 1' => 'answer 1',
'question 2' => 'answer 2',
'question 3' => 'answer 3',
]

那么你可以这样做:

foreach ($master as $question => $answer) {
...
}

注意,这意味着问题是唯一的。

如果你想要一个关联数组的索引数组,你可以这样做:

$master = [];
foreach (array_combine($questions, $answers) as $question => $answer) {
$master[] = [
'question' => $question,
'answer' => $answer,
];
}

这将给你:

[
[
'question' => 'question 1',
'answer' => 'answer 1',
],
[
'question' => 'question 2',
'answer' => 'answer 2',
],
[
'question' => 'question 3',
'answer' => 'answer 3',
],
]

或者,更传统的:

$master = [];
for ($i = 0; $i < count($questions); $i++) {
$master[] = [
'question' => $questions[$i],
'answer' => $answers[$i],
]
}

最新更新