tbachert/ucum

Parses und converts UCUM units

Maintainers

Package info

github.com/Nevay/ucum

pkg:composer/tbachert/ucum

Transparency log

Statistics

Installs: 2

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.0 2026-08-20 19:32 UTC

This package is auto-updated.

Last update: 2026-08-20 20:32:35 UTC


README

Parser for Unified Code for Units of Measure (UCUM) units.

Installation

composer require tbachert/ucum

Usage

Converting between units

$factor = Unit::convert('km/h', 'm/s');
$factor->apply(72); // 20

$factor = Unit::convert('%', '1');
$factor->apply(42); // 0.42

Inverse conversion

Use Factor::applyInverse() to convert in the opposite direction.

$factor = Unit::convert('%', '1');
$factor->applyInverse(0.42); // 42.0

Parsing units

For repeated conversions, or for algebraic operations, parse units once and reuse them.

$meter = Unit::parse('m');

Algebraic operations

Multiplication

$newton = Unit::parse('N');
$meter = Unit::parse('m');
$joule = $newton->multiplyBy($meter);

Division

$kilometer = Unit::parse('km');
$hour = Unit::parse('h');
$kilometersPerHour = $kilometer->divideBy($hour);

Exponentiation

$meter = Unit::parse('m');
$squareMeter = $meter->toPower(2);