lablnet / dshandler
1.0
2020-01-22 19:26 UTC
This package is auto-updated.
Last update: 2024-09-23 06:41:23 UTC
README
此包可以操作数据结构。
需求
- PHP
- Composer
安装
安装此包非常简单,首先确保您有正确的PHP版本和已安装的composer,然后在您的终端/命令提示符中运行:composer require lablnet/dshandler:dev-master
特性
- 基于列排序多维数组。
- 基于键移除重复数组。
- 基于键值对移除数组。
待办事项
[ ] 允许在移除数组时指定范围: - 像我们应该能够说,移除评分低于3的产品...
用法
考虑以下数据集
$products = [ [ 'id' => 1, 'name' => 'Test 1', 'price' => 300, 'rating' => 4.5 ], [ 'id' => 2, 'name' => 'Test 2', 'price' => 600, 'rating' => 4.1 ], [ 'id' => 3, 'name' => 'Test 3', 'price' => 150, 'rating' => 3.1 ], [ 'id' => 4, 'name' => 'Test 4', 'price' => 700, 'rating' => 5 ], [ 'id' => 5, 'name' => 'Test 5', 'price' => 900, 'rating' => 2.9 ], [ 'id' => 6, 'name' => 'Test 5', 'price' => 265, 'rating' => 2.9 ] ];
初始化类
require_once "../vendor/autoload.php"; $handler = new Lablnet\DSHandler();
- 通过键值对移除数组/产品
//remove array by key:value $handler->_remove($products, 'rating', 2.9); echo "<h3>Remove array by key:value</h3><pre>"; print_r($products); echo "</pre>"; echo "<br>";
- 通过键移除重复数组
//remove duplicate array by key $unique = $handler->_unique($products, 'name'); echo "<h3>Remove duplicate value by key</h3><pre>"; print_r($unique); echo "</pre>"; echo "<br>";
- 按价格排序产品
//Now sort the products base on price $sort_1_price = $products; $handler->_sort($sort_1_price, 'price', SORT_ASC); echo "<h3>Sort by price ASC</h3><pre>"; print_r($sort_1_price); echo "</pre>"; echo "<br>"; $sort_2_price = $products; $handler->_sort($sort_2_price, 'price', SORT_DESC); echo "<h3>Sort by price DESC</h3><pre>"; print_r($sort_2_price); echo "</pre>"; echo "<br>";
- 按评分排序产品
//Now sort the product base on rating $sort_1_rating = $products; $handler->_sort($sort_1_rating, 'rating', SORT_ASC); echo "<h3>Sort by Rating ASC</h3><pre>"; print_r($sort_1_rating); echo "</pre>"; echo "<br>"; $sort_2_rating = $products; $handler->_sort($sort_2_rating, 'rating', SORT_DESC); echo "<h3>Sort by Rating DESC</h3><pre>"; print_r($sort_2_rating); echo "</pre>"; echo "<br>";
示例
示例文件与该包一起分发。
许可证
此包是开源软件,受MIT许可证许可。
问题
如果您有任何问题,请随时问我。
https://www.linkedin.com/in/lablnet/ https://lablnet.github.io/profile