lucasjs7/convert-data-size

This is a simple and lightweight library that aims to convert computational data using PHP language.

Installs: 5

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/lucasjs7/convert-data-size

v1.0 2024-11-04 00:45 UTC

This package is auto-updated.

Last update: 2026-01-04 03:54:01 UTC


README

This is a simple and lightweight library that aims to convert computational data using PHP language.

Install using composer

composer require lucasjs7/convert-data-size

Available functions

Parser

With this function you can pass the quantity and the measurement in the same string and define the output measurement. If the input or output measurement is not in the list of supported measurements, the return will be false.

Function

class ConvertDataSize {

	public static function parser(string $value, string $toSize = 'B', ?int $scale = 2): string|false;

}

Parameters

  • value: The string containing the quantity with the computational unit

  • toSize: The measure of result

  • scale: Sets the number of digits after the decimal place of the result

Examples

<?php

use Lucasjs7\ConvertDataSize\ConvertDataSize;

# Input in YiB
echo ConvertDataSize::parser('110 YiB');
# Output in B: 132981840157609209217679360.00
<?php

use Lucasjs7\ConvertDataSize\ConvertDataSize;

# Input in MB
echo ConvertDataSize::parser('42 MB', 'GB');
# Output in GB: 0.04

Unit

With this function you can separately pass the input quantity, the input measurement and the output measurement. If the input or output measurement is not in the list of supported measurements, the return will be false.

Function

class ConvertDataSize {

	public static function unit(string $value, string $fromSize = 'B', string $toSize = 'B', ?int $scale = 2): string|false;

}

Parameters

  • value: The quantity

  • fromSize: The input measurement

  • toSize: The measure of result

  • scale: Sets the number of digits after the decimal place of the result

Examples

<?php

use Lucasjs7\ConvertDataSize\ConvertDataSize;

# Input in B
echo ConvertDataSize::unit('675823423', 'B', 'Kibit');
# Output in Kibit: 5279870.49
<?php

use Lucasjs7\ConvertDataSize\ConvertDataSize;

# Input in ZiB
echo ConvertDataSize::unit('147.86', 'ZiB', 'TB');
# Output in TB: 174562277039.27

Supported measures


    Byte (B)

    Kilobit (kbit)
    Kibibit (Kibit)
    Kilobyte (kB)
    Kibibyte (KiB)

    Megabit (Mbit)
    Mebibit (Mibit)
    Megabyte (MB)
    Mebibyte (MiB)

    Gigabit (Gbit)
    Gibibit (Gibit)
    Gigabyte (GB)
    Gibibyte (GiB)

    Terabit (Tbit)
    Tebibit (Tibit)
    Terabyte (TB)
    Tebibyte (TiB)

    Petabit (Pbit)
    Pebibit (Pibit)
    Petabyte (PB)
    Pebibyte (PiB)

    Exabit (Ebit)
    Exbibit (Eibit)
    Exabyte (EB)
    Exbibyte (EiB)

    Zettabit (Zbit)
    Zebibit (Zibit)
    Zettabyte (ZB)
    Zebibyte (ZiB)

    Yottabit (Ybit)
    Yobibit (Yibit)
    Yottabyte (YB)
    Yobibyte (YiB)