gideonazure/array_sorter

这是一个用于排序数字和字符串数组的包

v1.0.2 2020-08-24 13:53 UTC

This package is auto-updated.

Last update: 2024-09-24 23:03:07 UTC


README

本项目基于一个名为 "default-project" 的PHP项目结构包,有助于排序数字或字符串数组。

安装

使用composer 安装类序列化器。

composer require gideonazure/array_sorter

使用方法

// require needed class to your project
use \ArraySorter\StringSorter;
use \ArraySorter\AscStringArraySorter;
use \ArraySorter\DescStringArraySorter;
use \ArraySorter\NumericSorter;
use \ArraySorter\AscNumericArraySorter;
use \ArraySorter\DescNumericArraySorter;
use \ArraySorter\Exception\ValidArrayTypeException;
use \ArraySorter\Exception\ValidDataException;

// Create instance of a class...

// ...for sort numeric array data
$numeric = new NumericSorter();

// ...for sort strings array data
$string = new StringSorter();


// set an instance of a class implementing sort direction as a property for numeric arrays
$numeric->setDirection(new AscNumericArraySorter()); // for ascending sorting
$numeric->setDirection(new DescNumericArraySorter()); // for descending sorting

// set an instance of a class implementing sort direction as a property for strings arrays
$string->setDirection(new AscStringArraySorter()); // for ascending sorting
$string->setDirection(new DescStringArraySorter()); // for descending sorting


// and then call  "sort" method of instance 
// with passing array data

// return numeric arrays
$result = $numeric->sort(/* numeric array data */);

// return strings array
$result = $string->sort(/* strings array data  */);


// if need catch errors and return message use try->catch construction:
try {
    $result = $string->sort($stringArray);
} catch (ValidDataException $e){
    echo $e->getMessage(); 
} catch (ValidArrayTypeException $e) {
    echo $e->getMessage(); 
}

示例

为了演示和使用功能,请从 "/tests" 文件夹中运行文件 "SorterTest.php"。

php SorterTest.php

贡献

欢迎提交拉取请求。对于重大更改,请首先提交一个问题以讨论您希望进行更改的内容。

许可证

MIT