표현식(expressions)이란 php코드를 통해 어떤 값을 얻을 때를 말하는데, 표현식에서도 리터럴, 변수,상수, 연산자가 있습니다.

 $변수 = 표현식;

연산자(Operation)에도 산술 연산자, 대입 연산자, 비교 연산자, 비트 연산자, 논리 연산자, 문자열 연산자, 형변환 연산자, 삼항(Ternary) 연산자 등 php입문시 가장 중요하게 여겨질 만큼 큰 비중을 차지하는 게 연산자라 할 수 있습니다. 

연산자 중에서 기본적인 연산자는 산술 연산자입니다.

연산자 설 명
+ 덧셈 연산자
- 뺄셈 연산자
* 곱셈 연산자
/ 나눗셈 연산자
% 나머지 연산자
++ 1증가 연산자
-- 1감소 연산자

<?php 
 $a = 10; 
 $b = 20; 

 echo $a + $b; // 결과: 30 
 ?>

정수나 실수, 10진수, 8진수, 16진수로 표현할 때도 큰 따옴표나 작은 따옴표로 감싸주면 문자열로 인식하여 엉뚱한 산술이 되는 경우가 있으니 주의가 필요합니다.

<?php 
 $a = 1; 
 $b = 2; 
 $c = 3; 
 $x = $a + $b; 

 $d = $a +=$b +=$c += 5; 

 echo $x; // 결과: 3 

 echo $d; // 결과: 11 
 echo $a; // 결과: 11 
 echo $b; // 결과: 10 
 echo $c; // 결과: 8 
 ?>

음수로도 표현 가능합니다.

<?php 
 $a = 1; 
 $b = 2; 
 $c = 3; 
 $x = $a - $b; 

 $d = $a +=$b +=$c -= 5; 

 echo $x.'<br/>'; // 결과: -1 
 echo $d.'<br/>'; // 결과: 1 
 echo $a.'<br/>'; // 결과: 1 
 echo $b.'<br/>'; // 결과: 0 

 echo $c; // 결과: -2 
 ?>

실수나 8진수, 16진수, 10진수도 가능하므로 다음 표를 보면 알 수 있으리라 봅니다.

<?php 
 $a = 120.25; // 실수형 
 $b = 0.45e4; // 지수형 
 $c = 01234; // 8진수 
 $d = 0x456; // 16진수 
 $e = 15; 

 echo $c + $d; // 결과: 1778 
 echo $d + $b; // 결과: 5610 
 echo $e - $b; // 결과: -4485 
 ?>


증가/감소 연산자

1증가, 1감소 연산의 표현은 ++$var와 $var++의 차이를 이해할 필요가 있습니다.

변수명 설 명
++$a $a를 1 증가하고, $a를 반환
$a++ $a를 반환하고, $a를 1 증가
--$a $a를 1 감소하고, $a를 반환
$a-- $a를 반환하고, $a를 1 감소

<?php 
 $a = 1; 
 $b = 2; 
 $c = 3; 

 echo ++$a.'<br/>'; // 결과: 2 
 echo ++$a.'<br/>'; // 결과: 3 
 echo ++$a.'<br/>'; // 결과: 4 

 echo $b++.'<br/>'; // 결과: 2 
 echo $b++.'<br/>'; // 결과: 3 
 echo $b++.'<br/>'; // 결과: 4 

 echo $c--.'<br/>'; // 결과: 3 
 echo --$c.'<br/>'; // 결과: 1 
 ?>

증가 연산자는 숫자 뿐만 아니라 알파벳에도 영향을 받습니다. 알파벳 대소문자 구분없이 a-z만 지원하고 감소연산자는 사용할 수 없습니다.

<?php 
 $i = 'W'; 
 for ($n=0; $n<6; $n++) { 
    echo ++$i . "\n"; 
 } 

 /* 
 결과: 
 X 
 Y 
 Zbr /
 AA 
 AB 
 AC 
 */ 
 ?>

0 댓글