yashuk803/sorting-array

这是一个用于排序数组的库。

1.0 2019-03-01 20:31 UTC

This package is auto-updated.

Last update: 2024-09-06 10:06:39 UTC


README

这是一个用于排序数组的库

安装

https://packagist.org.cn/packages/yashuk803/sorting-array

使用方法

  1. 创建您想排序的数组
  2. 在 test 文件夹中,您可以找到如何使用此库的示例
  3. 您可以使用两种类型的排序数组:升序或降序
  4. 当您使用空数组时,sorter 方法返回消息 'Array is empty'。

示例

./tests/sorter/sorter.php

<?php

require_once __DIR__ . '/../vendor/autoload.php';
use Yashuk803\Sorting\Sorter;
use Yashuk803\Sorting\Factory;

$factory = new Factory();

$dataset = ['orange', 'charry', 'banana'];

$sorter = new Sorter($factory->createAscendingSort());
print_r($sorter->sort($dataset));
/* 
Array
(
    [0] => orange
    [1] => charry
    [2] => banana
)
*/

$sorter = new Sorter($factory->createDescendingSort());
print_r($sorter->sort($dataset));
/*
Array
(
    [2] => banana
    [1] => charry
    [0] => orange
)
*/

$dataset = [4, 6, 10, 5, 8, 16];

$sorter = new Sorter($factory->createAscendingSort());
print_r($sorter->sort($dataset));
/* 
Array
(
    [5] => 16
    [2] => 10
    [4] => 8
    [1] => 6
    [3] => 5
    [0] => 4
)
*/

$sorter = new Sorter($factory->createDescendingSort());
print_r($sorter->sort($dataset));
/*
 Array
(
    [0] => 4
    [3] => 5
    [1] => 6
    [4] => 8
    [2] => 10
    [5] => 16
)
*/

$sorter = new Sorter($factory->createNullArraySort());
$sorter->setSorterStrategy($factory->createDescendingSort());
print_r($sorter->sort($dataset));
/*
 Array
(
    [0] => 4
    [3] => 5
    [1] => 6
    [4] => 8
    [2] => 10
    [5] => 16
)
*/

$sorter = new Sorter($factory->createDescendingSort());
$sorter->sort($dataset); //null