awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
moneyphp avatar

moneyphp/money

0
View on GitHub↗
4,846 星标·444 分支·PHP·MIT·7 次浏览moneyphp.org↗

Money

这是一个用于使用值对象处理财务计算的 PHP 库。它将货币金额表示为整数,以避免浮点精度错误,并确保处理和存储过程中的数学准确性。

该库利用不可变值对象模式,其中计算返回新实例以防止副作用。它采用货币感知算术来限制数学运算仅在共享相同货币的对象之间进行,并使用基于接口的逻辑将货币转换委托给外部汇率提供商。

功能包括用于本地化人类可读字符串的国际货币格式化,以及用于跨网络 API 传输货币数据的标准化 JSON 序列化。

Features

  • Monetary Value Objects - Provides immutable value objects that represent monetary amounts as integers to ensure mathematical accuracy.
  • Currency Validators - Enforces rules that restrict mathematical operations to objects sharing the same currency to prevent invalid calculations.
  • PHP Financial Libraries - Implements the money pattern in PHP using value objects to avoid floating-point precision errors.
  • Financial Numeric Precision - Performs financial calculations using integer representation to eliminate rounding errors and precision loss.
  • Integer-Based Currency - Stores monetary values as integers within value objects to prevent floating-point rounding errors.
  • Smallest Subdivision Integers - Represents monetary amounts as integers of the smallest currency unit to eliminate floating-point precision errors.
  • Immutable Data Patterns - Implements an immutable architectural pattern where calculations return new instances to prevent side effects.
  • Currency Exchange - Implements logic for converting monetary amounts between different currencies using defined exchange rates.
  • Exchange Provider Interfaces - Decouples currency conversion logic from the money object by delegating rate lookups to external exchange providers.
  • Locale-Aware Currency Formatting - Transforms raw integers into human-readable currency strings using locale-specific formatting rules and symbols.
  • Currency Conversion - Provides a utility for transforming monetary amounts from one currency to another using exchange rates.
  • E-commerce and Payments - Implements the money pattern for currency handling.

Star 历史

moneyphp/money 的 Star 历史图表moneyphp/money 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Money 的开源替代方案

相似的开源项目,按与 Money 的功能重合度排序。
  • dinerojs/dinero.jsdinerojs 的头像

    dinerojs/dinero.js

    6,758在 GitHub 上查看↗

    Dinero.js is a TypeScript-first library for creating, calculating, and formatting monetary values. It provides immutable money objects that represent amounts in the smallest currency subdivision as integers, ensuring precision and preventing floating-point errors. The library enforces same-currency rules on arithmetic operations and validates currency codes against ISO 4217 definitions at creation time. The library distinguishes itself through a calculator plugin architecture that delegates arithmetic operations to interchangeable backends, supporting number, bigint, or custom precision libra

    TypeScriptamountcurrencyimmutable
    在 GitHub 上查看↗6,758
  • tigerbeetle/tigerbeetletigerbeetle 的头像

    tigerbeetle/tigerbeetle

    16,291在 GitHub 上查看↗

    TigerBeetle is a distributed financial accounting database designed for high-volume transaction processing. It functions as a specialized transaction engine that enforces strict double-entry bookkeeping invariants, ensuring that every debit and credit is balanced and accounted for with absolute consistency. By utilizing a consensus-based replication model, the system provides high availability and data durability across geographically distributed clusters, making it suitable for mission-critical financial infrastructure. The system distinguishes itself through a performance-oriented architect

    Zig
    在 GitHub 上查看↗16,291
  • flutter-team-archive/pluginsflutter-team-archive 的头像

    flutter-team-archive/plugins

    17,710在 GitHub 上查看↗

    This project is a collection of official plugin packages and a native integration library designed to provide a consistent interface for accessing hardware and software functionality across different mobile and desktop platforms. It serves as a native platform bridge, enabling cross-platform applications to invoke native code and manage operating system dependencies. The project utilizes a federated plugin architecture, splitting plugins into common interfaces and separate platform implementations to allow for independent development and extension. It further supports native integration throu

    Dartandroiddartflutter
    在 GitHub 上查看↗17,710
  • fasterxml/jacksonFasterXML 的头像

    FasterXML/jackson

    9,740在 GitHub 上查看↗

    Jackson is a Java data binding framework and multi-format data serializer used to translate data structures into native language objects. It functions as a JSON data binding library and a streaming parser that reads and writes data as discrete tokens to process large datasets with minimal memory. The project distinguishes itself through a bytecode serialization accelerator that replaces standard reflection with generated bytecode to increase data binding speed. It employs a module-based extensibility model to support a wide range of formats beyond JSON, including XML, YAML, CSV, TOML, and bin

    hacktoberfestjacksonjava-json
    在 GitHub 上查看↗9,740
查看 Money 的所有 30 个替代方案→

常见问题解答

moneyphp/money 是做什么的?

这是一个用于使用值对象处理财务计算的 PHP 库。它将货币金额表示为整数,以避免浮点精度错误,并确保处理和存储过程中的数学准确性。

moneyphp/money 的主要功能有哪些?

moneyphp/money 的主要功能包括:Monetary Value Objects, Currency Validators, PHP Financial Libraries, Financial Numeric Precision, Integer-Based Currency, Smallest Subdivision Integers, Immutable Data Patterns, Currency Exchange。

moneyphp/money 有哪些开源替代品?

moneyphp/money 的开源替代品包括: dinerojs/dinero.js — Dinero.js is a TypeScript-first library for creating, calculating, and formatting monetary values. It provides… tigerbeetle/tigerbeetle — TigerBeetle is a distributed financial accounting database designed for high-volume transaction processing. It… flutter-team-archive/plugins — This project is a collection of official plugin packages and a native integration library designed to provide a… tristanhimmelman/objectmapper — ObjectMapper is a JSON serialization framework for Swift that maps JSON strings and dictionaries into strongly typed… fasterxml/jackson — Jackson is a Java data binding framework and multi-format data serializer used to translate data structures into… johnezang/jsonkit — JSONKit is an Objective-C library used for parsing, serializing, and manipulating JSON data. It functions as a JSON…