akifrabbani / molek
基于两个日期和规则集计算金额
0.3
2019-07-15 02:58 UTC
Requires
- php: >=5.2.0
This package is auto-updated.
Last update: 2024-09-20 04:23:55 UTC
README
基于两个日期和规则集的付款金额计算器。
安装
通过 Composer
$ composer require akifrabbani/molek
使用方法
$start = new DateTime("2019-07-20 08:00:00"); $end = new DateTime("2019-09-20 23:00:00"); // Rule for every hour is RM 1. $ruleset = [ 'base_price' => 0, 'operation_hours' => [ 'start' => '08:00', 'end' => '20:00' ], 'first' => [ [ 'type' => 'minute', 'duration' => 15, 'price' => 0 ], [ 'type' => 'hour', 'duration' => 1, 'price' => 4, 'days' => ['sat', 'sun'], 'dates' => [ '2019-07-11' ] ], [ 'type' => 'hour', 'duration' => 1, 'price' => 2, 'days' => ['mon', 'tue', 'wed', 'thu', 'fri'] ] ], 'normal' => [ [ 'type' => 'hour', 'interval' => 1, 'price' => 1, 'days' => ['mon', 'tue', 'wed', 'thu', 'fri'] ], [ 'type' => 'hour', 'interval' => 1, 'price' => 1.5, 'days' => ['sat', 'sun'], 'dates' => [ '2019-07-11' ] ] ], 'max' => [ [ 'type' => 'hour', 'duration' => 8, 'price' => 10, 'days' => ['mon', 'tue', 'wed', 'thu', 'fri'] ], [ 'type' => 'hour', 'duration' => 8, 'price' => 15, 'days' => ['sat', 'sun'], 'dates' => [ '2019-07-11' ] ] ] ]; $molek = new AkifRabbani\Molek\Molek($ruleset); echo "Price is RM " . $molek->calculate($start, $end);
致谢
- Akif Rabbani (https://github.com/akifrabbani)
- Mohd Hafizuddin M Marzuki (https://github.com/apih)
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 获取更多信息。