boolval în PHP

Transformă o valoare în true sau false, după regulile PHP.

Sintaxă
boolval(mixed $value): bool

Ce face boolval

boolval($x) face același lucru ca (bool) $x. Sunt considerate false: false, 0, 0.0, "", "0", null și tabloul gol. Orice altă valoare este true.

Sunt aceleași reguli pe care PHP le folosește într-un if. Funcția este utilă ca parametru, de exemplu array_map("boolval", $tablou).

Parametri

Parametru Descriere
$value Valoarea transformată.

Ce returnează

true sau false.

Exemple

Exemplul 1: Ce este fals și ce este adevărat

<?php
foreach ([0, "0", "", null, [], "0.0", " ", "false", -1] as $v) {
    echo str_pad(json_encode($v), 8) . " => " . var_export(boolval($v), true) . "\n";
}

Rezultat

0        => false
"0"      => false
""       => false
null     => false
[]       => false
"0.0"    => true
" "      => true
"false"  => true
-1       => true

Exemplul 2: O bifă din formular

O bifă nebifată nu este trimisă deloc, de aceea pornim de la null.

<?php
$_POST = ["newsletter" => "1"];

$abonat = boolval($_POST["newsletter"] ?? null);
$termeni = boolval($_POST["termeni"] ?? null);
var_dump($abonat, $termeni);

Rezultat

bool(true)
bool(false)

Greșeli frecvente

  • Textul "false" sau "0.0" este true, pentru că nu este gol și nici exact "0". Pentru texte precum „true/false/yes/no” folosește filter_var($x, FILTER_VALIDATE_BOOLEAN).

Comenzi înrudite

  • is_bool: Verifică dacă o valoare este de tip boolean, adică exact true sau false.
  • empty: Verifică dacă o variabilă lipsește sau are o valoare considerată „goală”.
  • intval: Transformă o valoare în număr întreg.