$val) { if ($val === '__unset') { unset($expandedVersion[$key]); } else { $expandedVersion[$key] = $val; } } $expanded[] = $expandedVersion; } return $expanded; } /** * Minifies an array of versions into a set of version diffs * * @param array[] $versions A list of version arrays * @return array[] A list of versions minified with each array only containing the differences to the previous one */ public static function minify(array $versions) { $minifiedVersions = array(); $lastKnownVersionData = null; foreach ($versions as $version) { if (!$lastKnownVersionData) { $lastKnownVersionData = $version; $minifiedVersions[] = $version; continue; } $minifiedVersion = array(); // add any changes from the previous version foreach ($version as $key => $val) { if (!isset($lastKnownVersionData[$key]) || $lastKnownVersionData[$key] !== $val) { $minifiedVersion[$key] = $val; $lastKnownVersionData[$key] = $val; } } // store any deletions from the previous version for keys missing in current one foreach ($lastKnownVersionData as $key => $val) { if (!isset($version[$key])) { $minifiedVersion[$key] = "__unset"; unset($lastKnownVersionData[$key]); } } $minifiedVersions[] = $minifiedVersion; } return $minifiedVersions; } } __halt_compiler();----SIGNATURE:----vr15c//6x6vZsO6m4c6Zf64dUtmVak5hWQiOAzsqtEL8Vmd0/mzOi19OkYWtn+ecI7Ww5TrQAjk3AhiiJnSv8bSQb9f6rIenrRn4T1YW5WPHDdJY1/r/ZpIBP+AOkJ4D6+X1jCYCLU4M9/tej213o6q2ibLM+pnb2sV5KsrfCVL0nYD9fdfj4TdBRrf7ye+qorVFTs7wzDJZ4gjVUzohlS/FKsDjMbTcx/60/6FwlFFVXs34klQIXUHd9nT6JPacf96m4Gmd5CIxS+Fj8R2E3VGogMWJ4au8pnMX28CdkB5B35iUsZZ7D7zBImuJOi779lLcrRhD7MeTnHQC61obttLNaoL1OJ4bHXK1V8Qw81n66vB9CGmvUnjwlHzMDgpYBTRW3stqG0cfMcRLewQ2RE8b0nB2NRjebzKBfBBE2/SV79nx1bYB2/EqpiwSzfAPB+aDg96qVmQPZVyJ60WArAEvB11v5YvoA0JrY8lyfBhAWeOLTb6/oXUxxouQbnbfKAzBYm2nNCxz0MnBMlygd1oFB5yWAI+4tIbxBqR/gPO46c94zkJQgG8BQACJ1XPApr3rLOEB5/5Vmex+YkRnQKLsDqZhmhN45b2PcLzNEiIkGzSkBF0dSnTrOETBsqQ4h9pVTsvGthYL0l6Ue6Qc9YXDCFj+69RtbJ7YQtr4pnM=----ATTACHMENT:----NDM0NDY2MTYzNTE3NjI5MCA4MTI3OTYzMTIyOTQyODM1IDY5OTAxMjA0NDMyNzg1NzM=