Man kennt es man hat ein schönes unasigned int wie zB. 1572865
Doch welche einzelnen Flags sind da genutzt?
Das lassen wir uns entweder von Codewalker beantworten oder aber nutzen PHP
PHP Code:
PHP: functions.php
if (!function_exists('convertuinttobits')) {
/**
* @param $flag
* @return array
*/
function convertuinttobits($flag): array
{
$flags= array(); // Array initialisieren
for ($i = 0; $i <= 32; $i++) {
if ($flag & (1 << $i)) {
$flags[] = (1 << $i);
}
}
sort($flags); // Kurz mal das Array sortieren 1,2,3,4.....
return $flags; // zurück geben
}
}
Alles anzeigen
Und so funktioniert es ein kleines Beispiel:
PHP
<?php
if (!function_exists('convertuinttobits')) {
/**
* @param $flag
* @return array
*/
function convertuinttobits($flag): array
{
$flags= array(); // Array initialisieren
for ($i = 0; $i <= 32; $i++) {
if ($flag & (1 << $i)) {
$flags[] = (1 << $i);
}
}
sort($flags); // Kurz mal das Array sortieren 1,2,3,4.....
return $flags; // zurück geben
}
}
foreach (convertuinttobits(1572865) as $flag){
echo "Das Flag: $flag<br />";
}
Alles anzeigen
Die Ausgabe aus dem Beispiel würde so aussehen:
Jetzt bleibt mir nur noch zu sagen viel spaß damit für die Personen die damit was anfangen können!
//Edit:
Try it here: