PHP 8.4.0 RC4 available for testing

boolval

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

boolvalRécupère la valeur booléenne d'une variable

Description

boolval(mixed $value): bool

Retourne la valeur booléen de la variable fournie dans le paramètre value.

Liste de paramètres

value

La valeur scalaire qui sera convertie en booléen.

Valeurs de retour

La valeur booléen du paramètre value.

Exemples

Exemple #1 Exemple avec boolval()

<?php
echo '0: '.(boolval(0) ? 'true' : 'false')."\n";
echo
'42: '.(boolval(42) ? 'true' : 'false')."\n";
echo
'0.0: '.(boolval(0.0) ? 'true' : 'false')."\n";
echo
'4.2: '.(boolval(4.2) ? 'true' : 'false')."\n";
echo
'"": '.(boolval("") ? 'true' : 'false')."\n";
echo
'"string": '.(boolval("string") ? 'true' : 'false')."\n";
echo
'"0": '.(boolval("0") ? 'true' : 'false')."\n";
echo
'"1": '.(boolval("1") ? 'true' : 'false')."\n";
echo
'[1, 2]: '.(boolval([1, 2]) ? 'true' : 'false')."\n";
echo
'[]: '.(boolval([]) ? 'true' : 'false')."\n";
echo
'stdClass: '.(boolval(new stdClass) ? 'true' : 'false')."\n";
?>

L'exemple ci-dessus va afficher :

0:        false
42:       true
0.0:      false
4.2:      true
"":       false
"string": true
"0":      false
"1":      true
[1, 2]:   true
[]:       false
stdClass: true

Voir aussi

  • floatval() - Convertit une chaîne en nombre à virgule flottante
  • intval() - Retourne la valeur numérique entière équivalente d'une variable
  • strval() - Récupère la valeur d'une variable, au format chaîne
  • settype() - Affecte un type à une variable
  • is_bool() - Détermine si une variable est un booléen
  • Le transtypage

add a note

User Contributed Notes 7 notes

up
54
Matt M
9 years ago
To anyone like me who came here looking for a way to turn any value into a 0/1 that will fit into a MySQL boolean (tinyint) field:

<?php
$tinyint
= (int) filter_var($valToCheck, FILTER_VALIDATE_BOOLEAN);
?>

tinyint will be 0 (zero) for values like string "false", boolean false, int 0

tinyint will be 1 for values like string "true", boolean true, int 1

Useful if you are accepting data that might be from a language like Javascript that sends string "false" for a boolean false.
up
44
Anonymous
3 years ago
boolval('false') returns true.
boolval('False') return true.
up
54
info at lomalkin dot ru
11 years ago
<?

// Hack for old php versions to use boolval()

if (!function_exists('boolval')) {
function boolval($val) {
return (bool) $val;
}
}
?>
up
25
raphael.satyago
9 years ago
function is_true($val, $return_null=false){
$boolval = ( is_string($val) ? filter_var($val, FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE) : (bool) $val );
return ( $boolval===null && !$return_null ? false : $boolval );
}

// Return Values:

is_true(new stdClass); // true
is_true([1,2]); // true
is_true([1]); // true
is_true([0]); // true
is_true(42); // true
is_true(-42); // true
is_true('true'); // true
is_true('on') // true
is_true('off') // false
is_true('yes') // true
is_true('no') // false
is_true('ja') // false
is_true('nein') // false
is_true('1'); // true
is_true(NULL); // false
is_true(0); // false
is_true('false'); // false
is_true('string'); // false
is_true('0.0'); // false
is_true('4.2'); // false
is_true('0'); // false
is_true(''); // false
is_true([]); // false
up
23
Babak Bandpey
10 years ago
I believe that the double negation !! can perform the same task with the same result if your PHP is not up2date

var_dump(!!1, !!0, !!"test", !!"");

outputs:
boolean true

boolean false

boolean true

boolean false

May the life be good to you.
up
8
uasenior at gmail dot com
4 years ago
<?

// Some way to print boolean value as string

$b = true;

echo ['false', 'true'][$b];

?>
up
-4
Anonymous
10 years ago
A misspell in v2.0.
:-)

Hack v2.1

<?php

if( ! function_exists('boolval'))
{
/**
* Get the boolean value of a variable
*
* @param mixed The scalar value being converted to a boolean.
* @return boolean The boolean value of var.
*/
function boolval($var)
{
return !!
$var;
}
}

?>
To Top