wireBytesStr() function

Given a quantity of bytes (int), return readable string that refers to quantity in bytes, kB, MB, GB, etc.

Usage

// basic usage
$string = wireBytesStr(int $bytes);

// usage with all arguments
$string = wireBytesStr(int $bytes, $small = false, $options = array);

Arguments

NameType(s)Description
bytesint

Quantity in bytes

small (optional)bool, int, array

Make returned string as small as possible? (default=false)

  • true (bool): Yes, make returned string as small as possible.
  • 1 (int): Same as true but with space between number and unit label.
  • Or optionally specify the $options argument here if you do not need the $small argument.
options (optional)array, int

Options to modify default behavior, or if an integer then decimals option is assumed:

  • decimals (int): Number of decimals to use in returned value (default=0).
  • decimal_point (string|null): Decimal point character, or null to detect from locale (default=null).
  • thousands_sep (string|null): Thousands separator, or null to detect from locale (default=null).
  • small (bool): If no $small argument was specified, you can optionally specify it in this $options array.
  • type (string): To force return value as specific type, specify one of: bytes, kilobytes, megabytes, gigabytes; or just: b, k, m, g. (3.0.148+ only)

Return value

string


Functions methods and properties

API reference based on ProcessWire core version 3.0.172

Twitter updates

  • This week ProcessWire (3.0.175) gained the ability to maintain separate read-only and read-write database connections to optimize scalability, cost and performance. The post covers why this can be so valuable and how to configure it in ProcessWire— More
    2 April 2021
  • ProcessWire 3.0.174 core updates: improvements to the new path/URL hooks and more— More
    12 March 2021
  • ProcessWire 3.0.173 adds several new requested features and this post focuses on one of my favorites: the ability to hook into and handle ProcessWire URLs, independent of pages— More
    5 March 2021

Latest news

  • ProcessWire Weekly #361
    In the 361st issue of ProcessWire Weekly we'll take  closer look at a new third party module called Copy Markdown, and check out the latest weekly update from Ryan. Read on!
    Weekly.pw / 10 April 2021
  • ProcessWire 3.0.175 adds new database scalability options
    This week ProcessWire gained the ability to maintain separate read-only and read-write database connections to optimize scalability, cost and performance. The post covers why this can be so valuable and how to configure it in ProcessWire.
    Blog / 2 April 2021
  • Subscribe to weekly ProcessWire news

“I am currently managing a ProcessWire site with 2 million+ pages. It’s admirably fast, and much, much faster than any other CMS we tested.” —Nickie, Web developer