peterkahl/apple-os-x-build-version

Associative array of OS X build and version codes that can be used in various ways.

v43.8 2019-10-11 03:55 UTC

README

Downloads Download per Month License If this project has business value for you then don't hesitate to support me with a small donation.

Associative array of OS X build and version codes that can be used in various ways. Uses fuzzy matching.

Usage

use peterkahl\OSXbuild\OSXbuild;

# Takes OS X build code and returns corresponding OS X version.
echo '16E195 ............ '. OSXbuild::getVersion('16E195') ."\n";
# Let's try build code that's not in our array:
echo '15A299 ............ '. OSXbuild::getVersion('15A299') ."\n";
/*
16E195 ............ 10.12.4
15A299 ............ 10.11
*/

# Are build/version data outdated? Older than 30 days:
if (OSXbuild::GetDataTimestamp() < time() - 30*86400) {
  echo 'OUTDATED';
  # Send email to admin to do something?
}

# Returns associative array of OS X versions.
$array = OSXbuild::getArray();

# Returns a randomly chosen OS X Calendar User Agent string.
echo OSXbuild::getCalendarUA(); # Mac+OS+X/10.12.2 (16C67) CalendarAgent/384

# Optionally, you can specify a minimum version of OS X (to get random User Agent string).
# Argument must be a string in format 'MAJOR.MINOR' (1 dot only.)
echo OSXbuild::getCalendarUA('10.10');