場景
原有帖子列表A,現需在A中推廣新業務B,則需要在A列表中1:1混合B的數據,隨機混合,但需保持A和B兩列表原來的數據排序。具體參考下面範例的效果。
原理
範例:
<code>//随机合并两个数组元素,保持原有数据的排序不变(即各个数组的元素在合并后的数组中排序与自身原来一致) function shuffleMergeArray() { $mergeArray = array(); $sum = count($array1) + count($array2); for ($k = $sum; $k > 0; $k--) { $number = mt_rand(1, 2); if ($number == 1) { $mergeArray[] = $array2 ? array_shift($array2) : array_shift($array1); } else { $mergeArray[] = $array1 ? array_shift($array1) : array_shift($array2); } } return $mergeArray; }</code>以上就介紹了[演算法]PHP隨機合併數組並保持原始排序,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。