$var = (int) $value; // 정수 타입으로 캐스팅
$var = (float) $value; // 실수 타입으로 캐스팅
$var = (bool) $value; // 부울(boolean) 타입으로 캐스팅
$var = (string) $value; // 문자열 타입으로 캐스팅
$var = (array) $value; // 배열 타입으로 캐스팅
$var = (object) $value; // 객체 타입으로 캐스팅
$var = (unset) $value; // NULL 타입으로 캐스팅
(type) expression
// 변수를 정수 타입으로 캐스팅
$var_1 = '123.45';
$int_casting = (int) $var_1;
echo $int_casting; // 출력: 123
var_dump($int_casting); // 출력: int(123)

// 변수를 부동소수점 타입으로 캐스팅
$var_2 = '123.45';
$float_casting = (float) $var_2;
echo $float_casting; // 출력: 123.45
var_dump($float_casting); // 출력: float(123.45)

// 변수를 문자열 타입으로 캐스팅
$var_3 = '123.45';
$string_casting = (string) $var_3;
echo $string_casting; // 출력: '123.45'
var_dump($string_casting); // 출력: string(6) "123.45"

// 변수를 배열 타입으로 캐스팅
$var_4 = '123.45';
$array_casting = (array) $var_4;
var_dump($array_casting); // 출력: array(1) { [0]=> string(4) "123.45" }

// 변수를 객체 타입으로 캐스팅
$var_5 = '123.45';
$object_casting = (object) $var_5;
var_dump($object_casting); // 출력: object(stdClass)#1 (1) { ["scalar"]=> string(6) "123.45"

// 변수를 부울(boolean) 타입으로 캐스팅
$var_6 = '123.45';
$boolean_casting = (bool) $var_6;
var_dump($boolean_casting); // 출력: bool(true)
$var = 3.14;
$str_val = (string) $var;
var_dump($str_val); // string(4) "3.14"

/* 원본 변수나 값은 변경되지 않습니다. */
var_dump($var); // float(3.14)
$var = 'hello';
$arr = (array) $var;
var_dump($arr); // 출력: array(1) { [0]=> string(5) "hello" }
echo $arr[0];  // 결과값: 'hello'
$var = 123;
$obj = (object) $var;
var_dump($obj); // 출력: object(stdClass)#1 (1) { ["scalar"]=> int(123) } 123
echo $obj->scalar;  // 결과: 123