我在循环播放我想做的事情时遇到了麻烦。
我有一个名为$data
的数组,目前只包含两个元素:
array(2) {
["pagination"]=>
string(166) "https://someURL.com"
["images"]=>
string(3) "foo"
}
我现在希望在[images]
元素中添加另一个维度。再次在该元素中,另外两个数据。结果如下:
array(2) {
["pagination"]=>
string(166) "https://someURL.com"
["images"]=> array(5) {
[0]=> array(2){
["image_url"]=> string(1234) "http://www.blah.com"
["caption"]=> string(1234) "Here is my caption strng"
}
[1]=> array(2){
["image_url"]=> string(1234) "http://www.blah.com"
["caption"]=> string(1234) "Here is my caption strng"
}
[2]=> array(2){
["image_url"]=> string(1234) "http://www.blah.com"
["caption"]=> string(1234) "Here is my caption strng"
}
[3]=> array(2){
["image_url"]=> string(1234) "http://www.blah.com"
["caption"]=> string(1234) "Here is my caption strng"
}
[4]=> array(2){
["image_url"]=> string(1234) "http://www.blah.com"
["caption"]=> string(1234) "Here is my caption strng"
}
}
我的问题是,我如何从它的原始来源(一个名为$pics
的数组)中提取数据并以上述方式将其输入我的新[images]
元素?
目前,我可以使用以下循环输出image_url
和caption
数据,我只是无法弄清楚如何将数据推送到上面的数组中。
foreach($pics['data'] as $pic){
$caption = $pic['caption']['text'];
$image = $pic['images']['standard_resolution']['url'];
}
答案 0 :(得分:2)
尝试这样的事情:
foreach($pics['data'] as $pics)
{
$caption = $pic['caption']['text'];
$image = $pic['images']['standard_resolution']['url'];
$data['images'][] = array($image, $caption);
}
编辑:$ data [' images']必须在 foreach语句之前设置为数组:$data['images'] = array();