PHP - 按特定索引重新排列数组

ani*_*zzz 5 php arrays sorting indexing

例如,我有以下代码:

$sample = array(apple, orange, banana, grape);
Run Code Online (Sandbox Code Playgroud)

我想通过创建$sample[2]new来重新排列这个数组,$sample[0]同时在整个数组中保持相同的顺序。

输出应该是:

Array ( [0] => banana [1] => grape [2] => apple [3] => orange) 
Run Code Online (Sandbox Code Playgroud)

Mar*_*Vry 7

根据需要使用array_shift()多次...

$sample = array('apple', 'orange', 'banana', 'grape');

$fruit = array_shift($sample);
$sample[] = $fruit;
// now $sample will be array('orange', 'banana', 'grape', 'apple');
Run Code Online (Sandbox Code Playgroud)

假设你想创建一个函数:

function rearrange_array($array, $key) {
    while ($key > 0) {
        $temp = array_shift($array);
        $array[] = $temp;
        $key--;
    }
    return $array;
}
Run Code Online (Sandbox Code Playgroud)

现在,rearrange_array($sample, 2)您可以使用将示例数组重新排列为所需的输出。