본문 바로가기

A.P.M Tip

[PHP] php 정수형,실수형,문자열

<== 시간 나시면 공지사항 한번 읽어 주세요.

정수형

정수형의 데이터 타입은 다음과 같이 지정할 수 있다.
$a = 123;
$b = -123;
$c = 0123;
$d = 0x123;

첫번째 $a라는 변수에 123이라는 십진수를 대입한 것이고 -123역시 십진수로서 음수를 대입한 것이며 세 번째 0123은 8진수로써 123을 대입한 것이다. 0으로 시작하는 숫자는 0진수로 인식한다. 십진수에서 0123과 123은 같다. 이것과 혼동하지 않길 바란다. 이것은 C문법과 같다.

따라서 10진수 값으로는 83이 될 것이다. 네 번째 0x로 시작하는 숫자는 16진수임을 의미하며 역시 C의 문법과 같다. 10진수 291에 해당한다. 변수값 그대로 echo($a)했을때는 10진수로 출력될 것이다.
gettype()함수를 통해 각 변수의 데이터 타입을 알아보자.

<?php
$a = 123;
$type_a = gettype($a);
echo ("$a : $type_a <br><br>");

$b = -123;
$type_b = gettype($b);
echo ("$b : $type_b <br><br>");

$c = 0123;
$type_c = gettype($c);
echo ("$c : $type_c <br><br>");

$d = 0x123;
$tyle_d = gettype($d);
echo ("$d : $type_d");
?>
결과값
123   : integer
-123 : integer
83    : integer
291  : integer

실수형
실수형 변수는 다음과 같이 지정할 수 있다.

$a = 1.234;
$b = 1.2e3;

변수 $b의 '1.2' 뒤의 'e3' 은 10의 3제곱을 곱한 것과 같다. 따라서 변수 $b는 1200의 값을 갖게 될 것이다. 데이터 타입을 알아보자.

<?php
$a = 1.234;
$type_a = gettype($a);
echo ("$a : $type_a <br><br>");

$b = 1.2e3;
$type_b = gettype($b);
echo (" $b : $type_b");
?>

결과 값
1.234 : double
1200  : double


문자열

문자열 데이터 타입은 다음과 같이 선언할 수 있다.

$a = "hahaha";
$b = 'hahaha';
$c = hahaha;
$d = "1234";
$e = '1234';
$f  = 1234;

숫자를 문자열로 만들고자 할 때는 반드시 큰따옴표(") 혹은 작은따옴표(')를 해야 한다.

<?php
$a = "hahaha";
$type_a = gettype($a);
echo (" $a : $type_a <br>");

$b = 'hahaha';
$type_b = gettype($b);
echo(" $b : $type_b <br>");

$c = hahaha;
$type_b = gettype($c);
echo (" $c : $type_b <br>");

$d = "1234";
$type_d = gettype($d);
echo (" $d : $type_b <br>");

$e = '1234';
$type_e = gettype($e);
echo ( " $e : $type_e <br>");

$f = 1234;
$type_f = gettype($f);
echo (" $f : $type_f <br>");
?>
결과
hahaha : string
hahaha : string
hahaha : string
1234     : string
1234     : string
1234     : integer

문자열을 큰타옴표(")로 둘러 쌓였을 때 C나 펄에서 제공하던 특수 문자를 포함할 수 있다. 백슬래시(\)를 사용하여 다음과 같은 특수 기호를 표현할 수 있다. 다음이 주로 쓰이는 특수 기호들이다.

\n 개행(newline)
\r 캐리지리턴(carriage)
\t 수평 탭(horizontal tab)
\\ 백슬래쉬(backslash)
\$ 달러(혹은 스크링) 기호(dollar sign)
\" 큰따옴표(double-quote)

<?php
 $a  = "hahaha";
echo ("$a\n");

$b = 'hahaha';
echo ("$b\t");

echo ("AAaa\t \\ \$ \"");
?>

결과값
hahaha
hahaha AAaa \ $ "
 
위 결과는 브라우저 화면에서는 확인할 수 없다. 왜냐하면 html 에서는 탭이나 개행은 모두 하나의 공백으로 인식하기 때문이다. 위 예제의 결과는 소스 보기를 통해서 확인할 수 있다.
문자열을 큰따옴표(")가 아닌 작은따옴표(')로 표현했을 경우에는 "\\"와 "\'"의 두 가지 경우만을 표현할수 있다.

큰따옴표(")와 작은따옴표(')의 차이

큰따옴표와 작은따옴표의 차이는 변수를 포함하는 문자열을 출력할 때 그 차이가 나타난다. 큰타옴표로 둘러싸는 경우 그 속에 포함되어 있는 변수명에는 변수의 실제 값이 대입되어 출력되지만 작은 따옴표로 둘러싸는 경우 문자열 자체 그대로가 출력 된다.

<?php
$name = "Yoon";

echo "your name is $name";
//your name is Yoon;

echo 'your name is $name';
//your name is $name
?>





'A.P.M Tip' 카테고리의 다른 글

[PHP]양력음력변환  (0) 2012.05.24
[PHP] php abs 함수  (0) 2012.04.27
[PHP] php 일차원 배열  (0) 2012.02.21
[PHP] php 문자열 변환  (0) 2012.02.21
[PHP] php 형변환  (0) 2012.02.20