변수 관련 함수
변수와 관련한 함수에 대해서 알아봅시다.
gettype
변수가 어떠한 타입인지 알아보는 함수입니다.
예를 들어 문자열 함수 이면 문자열이다. 숫자이면 숫자이다. 등등 이런것을 알려주는거죠. 숫자가 ''안에 들어있다면 컴퓨터는 문자로 인식하는거 아시죠?
<?php $var = '3434'; echo gettype($var).'<br />'; $var = 3434; echo gettype($var).'<br />'; ?>
settype
변수의 타입을 변경하는 함수 입니다.
예를 들어 문자열의 함수를 숫자로 숫자의 함수를 문자열로 변경할 수 있습니다.
아래의 예제는 문자열인 98을 숫자로 바꾸는 소스입니다.
<?php $var1 = '98'; settype($var1, "integer"); echo gettype($var1); ?>
intval
변수값을 정수형으로 바꾸는 함수입니다.
<?php $var1 = 33.232; echo intval($var1); ?>
strval
변수를 문자형 값으로 반환하는 함수입니다.
<?php $var1 = 33; $var2 = strval($var1); echo gettype($var2); ?>
isset
변수의 존재 유무룰 확인하는 함수입니다.
<?php if(isset($var)){ echo '존재하는 변수'; }else{ echo '존재하지 않은 변수'; } ?>
unset
변수를 삭제하는 함수입니다.
<?php $var = 'variable'; if(isset($var)){ echo '존재하는 변수'; }else{ echo '존재하지 않은 변수'; } echo '<br />'; unset($var); echo 'unset 사용 후 <br />'; if(isset($var)){ echo '존재하는 변수'; }else{ echo '존재하지 않은 변수'; } ?>
empty
변수에 값이 존재하지 않으면 참, 존재하면 거짓을 반환하는 함수 입니다.
<?php $var = ''; // 또는 $var = null; 또는 $var = false 사용가능. echo empty($var); ?>
is_array
변수형이 배열인지 확인하는 함수입니다. 배열이면 참을 반환하고 배열이 아니면 거짓을 반환합니다.
<?php $arr = array(); echo is_array($arr); ?>
is_double
변수형이 더블형(소수)형이면 참을 반환하고 아니면 거짓을 반환합니다.
<?php $var = 23234.343; if(is_double($var)){ echo '소수입니다.'; } ?>
is_bool
변수형이 불린(논리연사자)형이면 참을 반환하고 아니면 거짓을 반환합니다.
<?php $var = true; if(is_bool($var)){ echo '불린형입니다.'; } echo '<br />'; $var = false; if(is_bool($var)){ echo '불린형입니다.'; } ?>
is_integer
변수형이 인티저(정수)형이면 참을 반환하고 아니면 거짓을 반환합니다.
<?php $var = 1212; if(is_integer($var)){ echo 'integer형 입니다.'; } ?>
is_null
변수가 비어있는지 확인합니다.
<?php $var = null; if(is_null($var)){ echo '변수의 값이 없습니다.'; } ?>
is_numeric
변수가 비어있는지 확인합니다.
<?php $var = 2323.34; if(is_numeric($var)){ echo '변수의 값이 수 입니다.'; } ?>
is_object
변수가 비어있는지 확인합니다.
<?php class Hello{ public function helloOutput(){ echo 'hello world'; } } $hello = new Hello; if(is_object($hello)){ echo '객체입니다.'; }else{ echo '객체가 아닙니다.'; } ?>
is_string
변수가 문자열인지 확인합니다.
<?php $var = '나는 문자열'; if(is_string($var)){ echo '문자열 입니다.'; }else{ echo '문자열이 아닙니다.'; } ?>