- array_flip: documentation ( source)
<?php
namespace Ozzie;
use Exception;
use ReflectionClass;
class Language {
const DUTCH = 1;
private static $languages_values;
public static function getConstName($value) {
if (!isset(self::$languages_values[$value])) {
throw new Exception('de value bestaat niet!');
}
return self::$languages_values[$value];
}
public static function init() {
static $initialized = false;
if ( ! $initialized) {
$ref_class = new ReflectionClass(self::class);
self::$languages_values = array_flip($ref_class->getConstants());
$initialized = true;
}
}
}
// ja, dit zet je in het zelfde bestand
Language::init();