<?php
namespace Wordfence\MmdbReader;
class Endianness {
const BIG = 0;
const LITTLE = 1;
private static $SYSTEM = null;
private static function detect() {
$test = unpack('S', "\x00\x01");
return $test[1] >> 8;
}
public static function get() {
if (self::$SYSTEM === null)
self::$SYSTEM = self::detect();
return self::$SYSTEM;
}
public static function isBig() {
return self::get() === self::BIG;
}
public static function isLittle() {
return self::get() === self::LITTLE;
}
public static function convert($value, $source, $target = null) {
if ($target === null)
$target = self::get();
if ($target === $source)
return $value;
return strrev($value);
}
}