编辑代码

<?php 

function straightInsertSort($arr): array
{
    array_unshift($arr, 0);
    $n = count($arr);
    for ($i = 2; $i < $n; $i++) {
        $arr[0] = $arr[$i];
        $j = $i - 1;
        while ($arr[$j] > $arr[0]) {
            $arr[$j+1] = $arr[$j];
            $j--;
        }
        $arr[$j+1] = $arr[0];
    }
    array_shift($arr);
    return $arr;
}

$arr = [45, 38, 66, 90, 88, 10, 25, 45];
var_dump(straightInsertSort($arr));



function test(array $arr)
{
    $size = count($arr);
    for ($i = 1; $i < $size; $i++) {
        $lastIndex = $i-1;
        while ($lastIndex >= 0 && $arr[$lastIndex+1] < $arr[$lastIndex]) {
            $temp = $arr[$lastIndex];
            $arr[$lastIndex] = $arr[$lastIndex+1];
            $arr[$lastIndex+1] = $temp;
            $lastIndex--;
        }
    }
    return $arr;
}