2025. 6. 27. 02:02ㆍ프로그램/PHP 초급
📚 PHP 초급 - 3주차 - 01 산술, 할당, 비교, 논리, 증감 연산자: 값들을 조작하고 판단하기

프로그래밍에서 #연산자 는 #변수 나 #값 을 사용하여 특정 작업을 수행하는 기호입니다. PHP는 다양한 종류의 #연산자 를 제공하여 #데이터 를 계산하고, #변수 에 값을 저장하며, #값 들을 #비교 하고, #논리적인_판단 을 내리는 등 복잡한 작업을 수행할 수 있도록 돕습니다. 이번 포스팅에서는 PHP의 가장 기본적인 #연산자 인 #산술_연산자, #할당_연산자, #비교_연산자, #논리_연산자, #증감_연산자 에 대해 자세히 알아보겠습니다.
1. #산술_연산자 (Arithmetic Operators)

#산술_연산자 는 숫자 값을 사용하여 사칙연산과 같은 수학적 계산을 수행합니다.
| #연산자 | 이름 | 설명 | 예시 | 결과 |
| + | 덧셈 | 두 피연산자를 더함 | $a + $b | |
| - | 뺄셈 | 두 피연산자를 뺌 | $a - $b | |
| * | 곱셈 | 두 피연산자를 곱함 | $a * $b | |
| / | 나눗셈 | 왼쪽 피연산자를 오른쪽 피연산자로 나눔 | $a / $b | |
| % | 나머지 | 왼쪽 피연산자를 오른쪽 피연산자로 나눈 나머지 | $a % $b | |
| ** | 거듭제곱 | 왼쪽 피연산자의 오른쪽 피연산자 제곱 | $a ** $b |
예시:
<?php
$num1 = 10;
$num2 = 3;
echo "덧셈: " . ($num1 + $num2) . "<br>"; // 출력: 덧셈: 13
echo "뺄셈: " . ($num1 - $num2) . "<br>"; // 출력: 뺄셈: 7
echo "곱셈: " . ($num1 * $num2) . "<br>"; // 출력: 곱셈: 30
echo "나눗셈: " . ($num1 / $num2) . "<br>"; // 출력: 나눗셈: 3.3333333333333
echo "나머지: " . ($num1 % $num2) . "<br>"; // 출력: 나머지: 1
echo "거듭제곱: " . ($num1 ** 2) . "<br>"; // 출력: 거듭제곱: 100
?>
2. #할당_연산자 (Assignment Operators)

#할당_연산자 는 #변수 에 값을 #할당 하는 데 사용됩니다. 가장 기본적인 #할당_연산자 는 등호(=)입니다. 다른 #할당_연산자 들은 #산술_연산자 와 결합되어 특정 연산을 수행한 후 그 결과를 다시 #변수 에 #할당 합니다.
| #연산자 | 이름 | 설명 | 예시 | 동일한 표현 |
| = | 할당 | 값을 할당함 | $a = $b | |
| += | 더한 후 할당 | 더한 후 할당함 | $a += $b | $a = $a + $b |
| -= | 뺀 후 할당 | 뺀 후 할당함 | $a -= $b | $a = $a - $b |
| *= | 곱한 후 할당 | 곱한 후 할당함 | $a *= $b | $a = $a * $b |
| /= | 나눈 후 할당 | 나눈 후 할당함 | $a /= $b | $a = $a / $b |
| %= | 나머지 후 할당 | 나머지 후 할당함 | $a %= $b | $a = $a % $b |
| **= | 거듭제곱 후 할당 | 거듭제곱 후 할당함 | $a **= $b | $a = $a ** $b |
| . | 문자열 연결 후 할당 | 문자열 연결 후 할당함 | $a .= $b | $a = $a . $b |
예시:
<?php
$x = 10;
$x += 5; // $x = $x + 5; 즉, $x는 15
echo "x: " . $x . "<br>"; // 출력: x: 15
$text = "Hello";
$text .= " World!"; // $text = $text . " World!"; 즉, $text는 "Hello World!"
echo "text: " . $text . "<br>"; // 출력: text: Hello World!
?>
3. #비교_연산자 (Comparison Operators)
#비교_연산자 는 두 #값 을 #비교 하여 #참 (true) 또는 #거짓 (false)의 #불린_값 을 반환합니다. 주로 조건문(if, else if)에서 사용됩니다.
| #연산자 | 이름 | 설명 | 예시 |
| == | 같다 | 값이 같으면 참 (타입은 비교하지 않음) | $a == $b |
| === | 동일하다 | 값과 타입이 모두 같으면 참 (엄격한 비교) | $a === $b |
| != | 같지 않다 | 값이 다르면 참 (타입은 비교하지 않음) | $a != $b |
| <> | 같지 않다 | !=와 동일 | $a <> $b |
| !== | 동일하지 않다 | 값 또는 타입이 다르면 참 (엄격한 비교) | $a !== $b |
| < | 작다 | 왼쪽 피연산자가 오른쪽 피연산자보다 작으면 참 | $a < $b |
| > | 크다 | 왼쪽 피연산자가 오른쪽 피연산자보다 크면 참 | $a > $b |
| <= | 작거나 같다 | 왼쪽 피연산자가 오른쪽 피연산자보다 작거나 같으면 참 | $a <= $b |
| >= | 크거나 같다 | 왼쪽 피연산자가 오른쪽 피연산자보다 크거나 같으면 참 | $a >= $b |
| <=> | 우주선 연산자 | 왼쪽이 작으면 -1, 같으면 0, 크면 1 반환 (PHP 7 이상) | $a <=> $b |
예시:
<?php
$val1 = 10;
$val2 = "10";
if ($val1 == $val2) {
echo "값은 같다 (==).<br>"; // 출력: 값은 같다 (==).
}
if ($val1 === $val2) {
echo "값과 타입이 모두 같다 (===).<br>"; // 출력되지 않음
} else {
echo "값은 같지만 타입이 다르다 (===).<br>"; // 출력: 값은 같지만 타입이 다르다 (===).
}
$age = 25;
if ($age >= 18) {
echo "성인입니다.<br>"; // 출력: 성인입니다.
}
?>
4. #논리_연산자 (Logical Operators)

#논리_연산자 는 #불린_값 들을 결합하여 새로운 #불린_값 을 생성합니다. 조건문에서 여러 조건을 동시에 검사할 때 유용합니다.
| #연산자 | 이름 | 설명 | 예시 |
| and | 논리 AND | 양쪽 피연산자가 모두 참이면 참 | $a and $b |
| or | 논리 OR | 둘 중 하나라도 참이면 참 | $a or $b |
| xor | 배타적 OR | 둘 중 하나만 참이면 참 (둘 다 참이거나 둘 다 거짓이면 거짓) | $a xor $b |
| ! | 논리 NOT | 피연산자가 참이면 거짓, 거짓이면 참 (반전) | !$a |
| && | 논리 AND | and와 동일 (우선순위가 높음) | $a && $b |
| ` | ` | 논리 OR |
예시:
<?php
$isMember = true;
$hasCoupon = false;
$age = 20;
if ($isMember && $age >= 18) { // $isMember가 true이고 $age가 18 이상이면
echo "회원이며 성인입니다.<br>"; // 출력: 회원이며 성인입니다.
}
if ($isMember || $hasCoupon) { // $isMember 또는 $hasCoupon 둘 중 하나라도 true이면
echo "할인 적용 대상입니다.<br>"; // 출력: 할인 적용 대상입니다.
}
?>
and, or와 &&, ||는 기능적으로는 같지만 #연산자_우선순위 에 차이가 있습니다. 일반적으로 &&와 ||가 더 높은 우선순위를 가지므로, 혼동을 피하기 위해 &&와 ||를 사용하는 것이 권장됩니다.
5. #증감_연산자 (Increment/Decrement Operators)
#증감_연산자 는 숫자 #변수 의 값을 1씩 증가시키거나 감소시킵니다.
| #연산자 | 이름 | 설명 | 예시 |
| ++$a | 전위 증가 | $a의 값을 1 증가시킨 후, 증가된 값을 반환 | $a는 1 증가 |
| $a++ | 후위 증가 | $a의 값을 먼저 반환한 후, $a의 값을 1 증가 | $a는 1 증가 |
| --$a | 전위 감소 | $a의 값을 1 감소시킨 후, 감소된 값을 반환 | $a는 1 감소 |
| $a-- | 후위 감소 | $a의 값을 먼저 반환한 후, $a의 값을 1 감소 | $a는 1 감소 |
예시:
<?php
$counter = 5;
echo "전위 증가: " . (++$counter) . "<br>"; // $counter는 6이 되고, 6 출력
echo "현재 counter: " . $counter . "<br>"; // 출력: 현재 counter: 6
$num = 5;
echo "후위 증가: " . ($num++) . "<br>"; // $num은 5가 출력된 후, 6이 됨
echo "현재 num: " . $num . "<br>"; // 출력: 현재 num: 6
?>
#전위_증감 과 #후위_증감 의 차이를 명확히 이해하는 것이 중요합니다. #전위_증감 은 연산 전에 값이 #변화 하고, #후위_증감 은 연산 후에 값이 #변화 합니다.
결론
이번 시간에는 PHP의 주요 #연산자 인 #산술, #할당, #비교, #논리, #증감 #연산자 에 대해 자세히 알아보았습니다. 이 #연산자 들은 PHP 코드를 작성하는 데 있어 가장 기본적인 도구이며, #데이터 를 조작하고 프로그램의 흐름을 제어하는 데 필수적입니다. 각 #연산자 의 기능과 사용법, 그리고 #연산자_우선순위 와 같은 미묘한 차이점을 잘 이해하고 활용한다면, 더욱 강력하고 효율적인 PHP 코드를 작성할 수 있을 것입니다.
'프로그램 > PHP 초급' 카테고리의 다른 글
| 📚 PHP 초급 - 3주차 - 03 오류 제어 연산자 (@): 오류 메시지 숨기기 (0) | 2025.06.27 |
|---|---|
| 📚 PHP 초급 - 3주차 - 02 조건 연산자 (삼항 연산자 ?:): 간결하게 조건 처리하기 (0) | 2025.06.27 |
| 📚 PHP 초급 - 2주차 - 05 데이터 타입 변환 (형 변환): 값의 형태 바꾸기 (0) | 2025.06.27 |
| 📚 PHP 초급 - 2주차 - 03 상수 (define): 변하지 않는 값 선언하기 (0) | 2025.06.27 |
| 📚 PHP 초급 - 2주차 - 02 데이터 타입 (정수, 실수, 문자열, 불린, 배열, 객체, NULL): 정보의 형태 (0) | 2025.06.27 |