繁体   English   中英

在 Foreach 循环内创建数组

[英]Create Array Inside Foreach Loop

如何将这些代码放在 foreach 循环中?

    $item1_details = array(
        'id' => 'a1',
        'price' => 18000,
        'quantity' => 3,
        'name' => "Apple"
    );


    $item2_details = array(
        'id' => 'a2',
        'price' => 20000,
        'quantity' => 2,
        'name' => "Orange"
    );

然后上面的数组将保存在一个变量中。 这是一个数组。 而且,是的,我不知道如何在数组中执行循环。 所以也请帮助我。

    $item_details = array ($item1_details, $item2_details);

因此,我不得不提问。 首先,如何在 foreach 循环中创建一个数组。 其次,如何在数组内部循环。

您不会在数组中放置循环,而是在循环中推入数组。

$item_details = array();
for ($i = 0; $i < 10; $i++) {
    $item_details[] = $item1_details;
    $item_details[] = $item2_details;
}

这将创建一个包含 10 个$item1_details$item2_details的交替副本的数组。

你提到了一个foreach循环,但那是为了循环一个已经存在的数组。 您没有显示任何要循环的数组,所以我不确定它在这种情况下如何应用。

   <?php 

    $item_details = array();
    for ($i = 0; $i < 10; $i++) {
        $item_details[] = $item1_details;
        print_r($item1_details);
        $item_details[] = $item2_details;
        print_r($item2_details);
    }

如果你想要数组中的任何一个值

   $item_details = array();
   for ($i = 0; $i < 10; $i++) {
        $item_details[] = $item1_details;
        print_r($item1_details['price']);
        $item_details[] = $item2_details;
        print_r($item2_details['price']);
    }

您可以将array_valuesarray_merge一起使用

$f = array_merge(array_values($item1_details), array_values($item2_details));

工作示例:- https://3v4l.org/fDM3N

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM