PHP将项目推送到数组在数组中创建单独的数组

问题描述

我创建了一个生成随机数的函数,该函数接受起始编号、结束编号、要生成的数字数量以及排除数字数组的能力。它看起来像这样:

function random_numbers($min,$max,$quantity,$exclude) {
    $numbers = range($min,$max);
    $left = array_diff($numbers,$exclude);
    shuffle($left);
    $remain = array_slice($left,$quantity);
    return $remain;
}

排除数组如下所示:

Array ( [0] => 217 [1] => 321 [2] => 1591 [3] => 1069 [4] => 1532 ) 

然后我想将新生成的数字与排除数组合并并将其保存到 wordpress post_Meta,所以我做了以下操作:

$exclude = get_post_meta($product_id,'_numbers_sold',false);

$numbers = random_numbers('1',$max_tickets,$qty,$exclude);

foreach($numbers as $number){
    $exclude [] = $number;
}

update_post_Meta($product_id,$sold_numbers);

函数有效,但将新数字推送到数组会创建单独的数组。我也试过 array_merge,但结果相同。

输出如下:

Array
(
    [0] => Array
        (
            [0] => 217
            [1] => 321
            [2] => 1591
            [3] => 1069
            [4] => 1532
        )

    [1] => 597
    [2] => 1853
    [3] => 582
    [4] => 1887
    [5] => 1484
)

为什么会发生这种情况?它将两个数组分开。是不是因为数组键已经存在?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)