我需要根据数据库中找到的计数从for循环中将值推送到数组。
以下是该方案。
$num_images = 5;
$numb_images = array();
for ($x = 1; $x <= $num_images; $x++) {
#$numb_images[] = array('image' . $x => '_image' . $x);
$numb_images['image' . $x] = "_image" . $x;
}
当我执行print_r($ numb_images)时,它将打印以下内容
Array ( [image1] => _image1 [image2] => _image2 [image3] => _image3 [image4] => _image4 [image5] => _image5 )
2个问题。 它打印带有我不想要的大括号[]的键。
第二件事是,它们都在同一行打印。
这正是我需要它填充
的方式$numb_images = array(
'image1' => '_image1',
'image2' => '_image2',
);
所以image1 =&gt; _image1键/对需要从给定的数字循环。
任何帮助都将受到高度赞赏。
由于
答案 0 :(得分:0)
如果要打印存储在变量中的内容,函数print_r
非常有用。它是以正确方式创建的输出变量。
如果您在数组中执行print_r
$numb_images = array(
'image1' => '_image1',
'image2' => '_image2',
);
结果将类似:
Array ( [image1] => _image1 [image2] => _image2 )
所以没有问题。函数print_r
打印在数组元素的方括号[]键中。
修改强>
您需要foreach
循环才能显示此字段。假设我们有这样的数组:
$numb_images = array(
'image1' => '_image1',
'image2' => '_image2',
'image4' => '_image4',
'image6' => '_image6',
);
现在要在不知道数组大小的情况下打印它,您可以使用foreach
:
foreach($numb_images as $key => $value)
{
echo $key . ' ' . $value. '<br/>';
}
输出:
image1 _image1
image2 _image2
image4 _image4
image6 _image6
有关foreach
的更多信息:http://php.net/manual/en/control-structures.foreach.php