sineld/money

为php提供的简单实用的货币操作。

dev-master 2019-05-21 20:20 UTC

This package is auto-updated.

Last update: 2024-09-22 08:13:28 UTC


README

Latest Version Total Downloads

sineld/money是一个PHP库,可以简化货币操作!没有静态属性或方法!

传递给类的任何数字都将自动准备进行数学运算。类使用,作为千位分隔符,使用.作为小数点。

该包可用于任何框架或spagetty应用程序。如果出现任何问题,请通过电子邮件联系我。

安装

通过Composer

$ composer require sineld/money

将使用情况添加到文件顶部

use Sineld\Money\Money;

开始使用。

非Composer用户

只需将Money.php复制到src文件夹中的项目,然后开始使用。无需额外的依赖项。

请求方法别名

用于方法的参数。

money->setDecimals(默认 = 2)
money->addTax(默认 = 18)
money->removeTax(默认 = 18)
money->setLocaleActive(默认 = false)
money->setLocaleCode(默认 = TRL)
money->setLocalePosition(默认 = prefix, (使用 "suffix" 代替反向))

使用示例

全部集中在一个地方

<?php

$number1 = '100,123.45';
$number2 = '50,123.45';

use Sineld\Money\Money;
$money = (new Money())
    ->make($number1) // Create a new Money instance.
    ->setDecimals(4) // Set decimals size.
    ->sum($number2) // Add $number2 variable(s) value to the $money
    ->subtract($number2) // Remove $number2 variable(s) value from the $money
    ->multiply('3') // Multiply $money with $numbers variable(s) value.
    ->divide('3') // Divide $money with $numbers variable(s) value.
    ->addTax(18) // Add $percent variable to the $money with calculated value.
    ->removeTax(18) // Remove $percent variable to the $money with calculated value.
    ->setLocaleActive(true) // Enable Locale Usage.
    ->setLocaleCode('') // Set Locale Code preference
    ->setLocalePosition('prefix') // Set Locale Position preference

    // ->getTax(); // Return calculated $taxAmount variable.
    ->get(); // Return $money variable according to the locale usage.
    // ->all(); // Return the $money and $taxAmount variables in a array.

var_dump($money);

基本求和操作

<?php

$number1 = '100,123.45';
$number2 = '50,123.45';

$money = (new Money())
    ->make($number1)
    ->sum($number2)
    ->get();

echo $money;

两个数字的基本求和操作

<?php

$number1 = '100,123.45';
$number2 = '50,123.45';
$number3 = '25,123.45';

$money = (new Money())
    ->make($number1)
    ->setDecimals(4)
    ->sum($number2, $number3)
    // ->sum($number2, $number3, $number4, ...) // add parametres as much as you need
    ->get();

echo $money;

基本减法操作

<?php

$number1 = '100,123.45';
$number2 = '50,123.45';

$money = (new Money())
    ->make($number1)
    ->subtract($number2)
    ->get();

echo $money;

两个数字的基本减法操作

<?php

$number1 = '100,123.45';
$number2 = '50,123.45';
$number3 = '25,123.45';

$money = (new Money())
    ->make($number1)
    ->setDecimals(4)
    ->subtract($number2, $number3)
    // ->subtract($number2, $number3, $number4, ...) // add parametres as much as you need
    ->get();

echo $money;

一个地方的基本求和和减法操作

<?php

$number1 = '100,123.45';
$number2 = '50,123.45';
$number3 = '25,123.45';

$money = (new Money())
    ->make($number1)
    ->setDecimals(4)
    ->sum($number2)
    ->subtract($number3)
    ->get();

echo $money;

一个地方的基本乘法和除法操作

<?php

$number1 = '100';
$number2 = '50';
$number3 = '25';

$money = (new Money())
    ->make($number1)
    ->setDecimals(0)
    ->multiply($number2)
    ->divide($number3)
    ->get();

echo $money;

基本税务操作

<?php

$number1 = '100';
$taxPercent = '18';

$money = (new Money())
    ->make($number1)
    ->setDecimals(2)
    ->addTax($taxPercent)
    ->get();

// tax added number
echo $money;

$tax = (new Money())
    ->make($number1)
    ->setDecimals(2)
    ->addTax($taxPercent)
    ->getTax();

// calculated tax after addtition
echo $tax;

$money = (new Money())
    ->make($number1)
    ->setDecimals(2)
    ->addTax($taxPercent)
    ->all();

// tax added number and calculated tax together
// var_dump($money);
echo $money['amount'];
echo $money['tax'];

从货币中移除税率百分比

<?php

$number1 = '236';
$taxPercent = '18';

$money = (new Money())
    ->make($number1)
    ->setDecimals(2)
    ->removeTax($taxPercent)
    ->get();

echo $money;

从货币中移除税率百分比并添加新的税率

<?php

$number1 = '236';
$taxPercent1rst = '18';
$taxPercent2nd = '8';

$money = (new Money())
    ->make($number1)
    ->setDecimals(2)
    ->removeTax($taxPercent1rst)
    ->addTax($taxPercent2nd)
    ->get();

echo $money;

在前面启用区域字符串输出

<?php

$number1 = '100';

$money = (new Money())
    ->make($number1) // Create a new Money instance.
    ->setDecimals(4) // Set decimals size.
    ->setLocaleActive(true) // Enable Locale Usage.
    ->setLocaleCode('') // Set Locale Code preference
    ->setLocalePosition('prefix') // Set Locale Position preference

    ->get(); // Return $money variable according to the locale usage.

echo $money;

在后面启用区域字符串输出

<?php

$number1 = '100';

$money = (new Money())
    ->make($number1) // Create a new Money instance.
    ->setDecimals(4) // Set decimals size.
    ->setLocaleActive(true) // Enable Locale Usage.
    ->setLocaleCode('') // Set Locale Code preference
    ->setLocalePosition('suffix') // Set Locale Position preference

    ->get(); // Return $money variable according to the locale usage.

echo $money;

贡献

请参阅contributing.md以获取详细信息和使用列表。

安全

如果您发现任何与安全相关的问题,请通过电子邮件联系作者,而不是使用问题跟踪器。

鸣谢

许可证

请参阅许可证文件以获取更多信息。