본문 바로가기
개발 기초/PHP

PHP - 타입 변환

by 륀두 2020. 4. 23.
반응형

자동 타입 변환(type juggling)

PHP에서는 변수를 선언할 때 타입을 명시할 필요가 없습니다.

왜냐하면, PHP에서 변수의 타입은 해당 변수에 대입하는 값에 따라 자동으로 결정되기 때문입니다.

이렇게 타입이 상황에 따라 자동으로 변환되는 것을 자동 타입 변환(type juggling)이라고 합니다.

강제 타입 변환(type casting)

PHP에서는 변수에 값을 대입할 때마다 변수의 타입이 그것에 맞게 변하게 됩니다.

하지만 사용자가 직접 데이터의 타입을 변환해야 할 경우도 많습니다.

PHP에서는 이러한 강제 타입 변환을 타입 캐스트 연산자인 괄호(())를 사용하여 수행할 수 있습니다.

변환시키고자 하는 데이터나 변수의 앞에 괄호를 붙이고, 그 괄호 안에 변환할 타입을 적으면 됩니다.

$var_01 = 10; // int(10)타입

$var_02 = (boolean) $var_01; // bool(true) 타입

$var_03 = 0; // int(0) 타입

$var_04 = (boolean) $var_03; // bool(false) 타입

PHP에서는 var_dump()함수를 사용하여 변수의 데이터 타입을 알아볼 수 있다.

$a = array("1", "2", "3");

$b = "string";

$c = 14;

var_dump($a); //array(3) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "3" }
var_dump($b); //string(6) "string"
var_dump($c); //int(14)

가변 변수(variable variables)

PHP에서는 변수의 타입뿐만 아니라 변수의 이름까지 동적으로 바꿀 수 있습니다.

이러한 변수를 가변 변수(variable variables)라고 하며, 해당 변수의 값을 또 다른 변수의 이름으로 취급합니다.

$PHP = "HTML";
$HTML = "CSS";
$CSS = "JavaScript";
$JavaScript = "Ajax";
$Ajax = "PHP";  

echo $PHP;       // HTML
echo $$PHP;      // $HTML -> CSS
echo $$$PHP;     // $$HTML -> $CSS -> JavaScript
echo $$$$PHP;    // $$$HTML -> $$CSS -> $JavaScript -> Ajax
echo $$$$$PHP;   // $$$$HTML -> $$$CSS -> $$JavaScript -> $Ajax -> PHP

 

반응형

'개발 기초 > PHP' 카테고리의 다른 글

PHP - 대입 연산자  (0) 2020.04.23
PHP - 산술 연산자  (0) 2020.04.23
PHP - 데이터 타입  (0) 2020.04.22
PHP - 변수  (0) 2020.04.22
PHP - 개발환경 설정하기  (0) 2020.04.22