/** * Get an array of the pre-computed parity of all 8-bit words * * @return array */ function getParityOfWords() { static $cachedParities = []; if (empty($cachedParities)) { if (!file_exists('computed_parities.txt')) { $bitwiseHelper = new BitwiseHelper(); $cachedParities = $bitwiseHelper->computeParityOfWords(0b11111111); $fp = fopen('computed_parities.txt', 'w'); fwrite($fp, serialize($cachedParities)); fclose($fp); } else { $cachedParities = unserialize(file_get_contents('computed_parities.txt')); } } return $cachedParities; }