sobota, 5 października 2019
Rzutowanie na typ Integer & Boolean
--------------------------------------------------------
TypeHint|TypeHint | Kastowanie | powiązane funkcje
return |argument | w nawiasach |
--------|---------|--------------|----------------------
int | int | int,integer |is_int,is_integer,is_long
bool | bool | bool,booblean|is_bool
--------------------------------------------------------
Kastowanie/pobieranie wartości poprzez (int) $var, intval($var), settype($var, 'int') konwertuje wartości tak samo:
wartość |typ $var|var_dump( |var_dump( |settype($var,'int');|
$var | |(int)$var)|intval($var))|var_dump($var); |
--------|--------|----------|-------------|--------------------|
'5' | string | int(5) | int(5) | int(5) |
'05' | string | int(5) | int(5) | int(5) |
'0.0' | string | int(0) | int(0) | int(0) |
'5.' | string | int(5) | int(5) | int(5) |
' 5 ' | string | int(5) | int(5) | int(5) |
' 5 a' | string | int(5) | int(5) | int(5) |
'a 5 ' | string | int(0) | int(0) | int(0) |
'a5' | string | int(0) | int(0) | int(0) |
'a' | string | int(0) | int(0) | int(0) |
'.5' | string | int(0) | int(0) | int(0) |
'' | string | int(0) | int(0) | int(0) |
' ' | string | int(0) | int(0) | int(0) |
5.1 | double | int(5) | int(5) | int(5) |
.5 | double | int(0) | int(0) | int(0) |
0.5 | double | int(0) | int(0) | int(0) |
true | boolean| int(1) | int(1) | int(1) |
false | boolean| int(0) | int(0) | int(0) |
null | null | int(0) | int(0) | int(0) |
---------------------------------------------------------------|
Kastowanie/pobieranie wartości prawda/fałsz za pomocą czterech sposobów zawsze zwraca taki sam wynik. Zwróć uwagę na wyniki oznaczone kolorem czerwonym. Jeżeli przekarzesz zmienną do instrukcji warunkowej if jej wartość zostanie rzutowana na typ boolean, zbędne jest przyrównywanie w ten sposób if ($bool === true) {...}.
wartość | typ |var_dump|var_dump|settype( |var_dump(|
$var | $var |((bool) |(boolval|$var,'bool'); |!! $var |
| |$var) |($var)) |var_dump($var);|) |
----------|-------|--------|--------|---------------|---------|
'' |string | false | false | false | false |
' ' |string | true | true | true | true |
'1' |string | true | true | true | true |
'0' |string | false | false | false | false |
'0.0' |string | true | true | true | true |
'a' |string | true | true | true | true |
'null' |string | true | true | true | true |
'false' |string | true | true | true | true |
0 |integer| false | false | false | false |
1 |integer| true | true | true | true |
-0 |integer| false | false | false | false |
-1 |integer| true | true | true | true |
0.0 |double | false | false | false | false |
-0.0 |double | false | false | false | false |
0.1 |double | true | true | true | true |
-0.1 |double | true | true | true | true |
[] |array | false | false | false | false |
[''] |array | true | true | true | true |
[0] |array | true | true | true | true |
(object)[]|object | true | true | true | true |
--------------------------------------------------------------|
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz