使用PHP,我在foreach
循环中设置了一个变体,并且在输出它时遇到了麻烦。在下面的示例中,当$variant
变量中实际上有3个时,我仅输出一个$variantData
。如何遍历每个$variant
并输出它们?
// Loop to find each variants ID
<? foreach ($variantsData as $variantData) {
$variant = array(
'id' => $variantData['variation_id'],
);
} ?>
// Output each variants ID
<? print_r( $variant['id'] ) ?>
答案 0 :(得分:4)
只需添加[]
即可追加数组。每次在$variant
循环中,您只是覆盖foreach()
变量。这就是为什么在$ $variant
变量中实际上只有3个时,您仅输出一个variantData
的原因。
// Loop to find each variants ID
<? foreach ($variantsData as $variantData) {
$variant[] = array('id'=> $variantData['variation_id']); // see this line
//^^
// Output each variants ID
print_r($variant);
} ?>
// Output all variants ID
<? print_r( $variant) ?>
现在要访问特定的变体ID,您还必须使用索引,例如,获取第一个变体ID,就可以使用
print_r($variant[0]['id']);
工作演示: https://3v4l.org/Wf9TE
要立即获取所有变体ID,您可以执行此操作。
<? foreach ($variantsData as $variantData) {
// Output each variants ID
echo $variantData['variation_id'];
$variant[] = $variantData['variation_id']; // see this line
} ?>
// Output all variants ID
<? print_r( $variant) ?>
要在foreach()循环中获取每个变体ID
<? foreach ($variantsData as $variantData) {
$variant = $variantData['variation_id']; // see this line
// Output each variants ID
echo $variant;
} ?>