Avatar ·

Cómo convertir una cadena a booleano en PHP

¡Hola a todos! Acabo de empezar a aprender PHP y me encontré con un problema. Tengo una variable que viene de un formulario o de una base de datos como una cadena. Por ejemplo, puede ser "true", "false", "1", "0", "yes", "no". Necesito convertir esta cadena a un tipo booleano real (bool) para usarlo en condiciones. Intenté simplemente asignar el valor: `$flag = "true";` — pero esto es una cadena, no un booleano. Luego probé convertir con `(bool) $string` — pero esto da `true` para cualquier cadena no vacía, incluso para "false". Es decir, `(bool) "false"` devuelve `true`, que no es lo que necesito. Aquí hay un ejemplo de código que no funciona como se espera: ```php $stringValue = "false"; $boolValue = (bool) $stringValue; // Resultado: true, pero debería ser false var_dump($boolValue); // bool(true) ``` Necesito que: - La cadena "true", "1", "yes", "on" se convierta en `true` - La cadena "false", "0", "no", "off", cadena vacía se convierta en `false` - No importa el caso de las letras (True, FALSE, Yes, etc.)