Estoy intentando crear una función con banderas como sus argumentos, pero la salida es siempre diferente, con lo que se espera:Banderas de funciones de PHP, ¿cómo?
define("FLAG_A", 1);
define("FLAG_B", 4);
define("FLAG_C", 7);
function test_flags($flags) {
if($flags & FLAG_A) echo "A";
if($flags & FLAG_B) echo "B";
if($flags & FLAG_C) echo "C";
}
test_flags(FLAG_B | FLAG_C); # Output is always ABC, not BC
¿Cómo puedo solucionar este problema?
Aah, ¡muchas gracias por su ayuda! – Teiv
Amigo, las expectativas de salida de Su comentario no es correcto. Porque la salida siempre será de otra manera: BC en lugar de ABC y este es un comportamiento correcto para el programa. –