常见的PHP中的基本排序算法有以下几种:

1. 冒泡排序(Bubble Sort)
冒泡排序是一种简单的排序算法。它重复地遍历要排序的列表,一次比较两个元素,并且如果它们的顺序错误就把它们交换过来。时间复杂度为O(n^2)。
示例代码如下:

// 冒泡排序
function bubbleSort($arr) {
    $n = count($arr);
    for ($i = 0; $i < $n - 1; $i++) {
        for ($j = 0; $j < $n - $i - 1; $j++) {
            if ($arr[$j] > $arr[$j+1]) {
                $temp = $arr[$j];
                $arr[$j] = $arr[$j+1];
                $arr[$j+1] = $temp;
            }
        }
    }
    return $arr;
}

$arr = [3, 2, 1, 5, 4];
$result = bubbleSort($arr);
print_r($result);

2. 选择排序(Selection Sort)
选择排序是一种简单直观的排序算法。它的工作原理是每次从待排序的数据中选出最小(或最大)的一个元素,放到序列的起始位置,然后再从剩余未排序的数据中继续寻找最小(或最大)的元素,放到已排序序列的末尾。时间复杂度为O(n^2)。
示例代码如下:

// 选择排序
function selectionSort($arr) {
    $n = count($arr);
    for ($i = 0; $i < $n - 1; $i++) {
        $minIndex = $i;
        for ($j = $i + 1; $j < $n; $j++) {
            if ($arr[$j] < $arr[$minIndex]) {
                $minIndex = $j;
            }
        }
        if ($i != $minIndex) {
            $temp = $arr[$i];
            $arr[$i] = $arr[$minIndex];
            $arr[$minIndex] = $temp;
        }
    }
    return $arr;
}

$arr = [3, 2, 1, 5, 4];
$result = selectionSort($arr);
print_r($result);

3. 插入排序(Insertion Sort)
插入排序是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。时间复杂度为O(n^2)。
示例代码如下:

// 插入排序
function insertionSort($arr) {
    $n = count($arr);
    for ($i = 1; $i < $n; $i++) {
        $key = $arr[$i];
        $j = $i - 1;
        while ($j >= 0 && $arr[$j] > $key) {
            $arr[$j+1] = $arr[$j];
            $j--;
        }
        $arr[$j+1] = $key;
    }
    return $arr;
}

$arr = [3, 2, 1, 5, 4];
$result = insertionSort($arr);
print_r($result);

以上就是PHP中的三种基本排序算法的介绍和示例代码。这些排序算法经常用于数据集较小的情况,如果数据集较大,可使用更高效的排序算法如快速排序、归并排序等。