settype
funkcja
Zmienia typ zmiennej w miejscu (przez referencję). Obsługuje: "int", "float", "string", "bool", "array", "object", "null".
settype(mixed &$var, string $type): bool
settype konwertuje zmienną do podanego typu, modyfikując ją w miejscu przez referencję — inaczej niż rzutowanie (int), które tworzy nową wartość. Zwraca true po sukcesie lub false gdy typ jest nieznany. Dozwolone nazwy typów: "int" (lub "integer"), "float" (lub "double"), "string", "bool" (lub "boolean"), "array", "object" (opakowuje wartość w stdClass), "null". W kodzie z declare(strict_types=1) i typowaniem deklaratywnym rzadko jest potrzebna — lepiej używać rzutowania explicite lub walidować dane na wejściu.
<?php
declare(strict_types=1);
$wartosci = ['42', '3.14', '1'];
foreach ($wartosci as &$v) {
settype($v, 'float');
}
unset($v); // rozłącz referencję po foreach
var_dump($wartosci);
// array(3) {
// [0]=> float(42)
// [1]=> float(3.14)
// [2]=> float(1)
// }