将一个数组队列随机插入另外一个数组里队列,就像插入广告一样

484次阅读
没有评论

共计 496 个字符,预计需要花费 2 分钟才能阅读完成。

/**
     * 将一个数组队列随机插入另外一个数组里队列
     *
     * @param $stacks
     * @param $needInsertArray
     */
    function love_array_insert_rand($stacks, $needInsertArray)
    {
        $limit  = count($stacks) + count($needInsertArray);
        $range  = range(0, $limit-1);
        shuffle($range);
        $data = [];
        foreach ($needInsertArray as $key=>&$item) {
            //$item['needle'] = array_shift($range);
            $needle = array_shift($range);
            $item['needle'] = $needle;
            $data[$needle] = $item;
        }

        for ($n = 0; $n < $limit; $n ++) {
            if (!isset($data[$n])) {
                $data[$n] = array_shift($stacks);
            }
        }
        ksort($data);
        return $data;
    }

再列表中插入随机广告数据,可以使用此方法。

正文完
 
BlackBeans
版权声明:本站原创文章,由 BlackBeans 2023-09-19发表,共计496字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。