Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP에서 '^'의 의미는? XOR(배타적 논리합) 비트 연산자 완벽 정리

PHP에서 '^' 연산자란?

PHP에서 '^' 기호는 비트 연산자(bitwise operator) 중 하나로, XOR(배타적 논리합, exclusive OR) 연산을 수행하는 데 사용됩니다. 이 연산자는 대상 변수들의 ASCII 값을 기준으로 비트 단위 계산을 수행하며, 그 결과를 확인하고자 할 때 활용됩니다.

XOR 연산의 동작 원리는 간단합니다. 값의 모든 비트에 대해 '^' 연산자가 다른 값의 해당 비트와 동일한지 검사합니다. 두 비트가 서로 같으면 결과로 0이 출력되고, 다르면 1이 출력됩니다.

XOR 진리표

비트 A비트 BA ^ B 결과
000
011
101
110

예제 코드

아래 예제는 '^' 연산자를 이용해 두 변수의 값을 서로 맞바꾸는(swap) 과정을 보여줍니다.

<?php
    $x = "a";
    $y = "b";
    $x ^= $y;
    $y ^= $x;
    $x ^= $y;
    echo $x;
    echo " ";
    echo $y;
?>

실행 결과

b
a

코드 설명

서로 다른 변수에 문자 값을 할당한 뒤, '^' 연산자를 사용해 두 변수에 대해 XOR 연산을 세 번 수행했습니다. 이 과정을 통해 두 변수의 값이 서로 교환되며, 최종 결과가 콘솔에 출력됩니다.

이처럼 XOR 연산은 임시 변수(temporary variable) 없이 두 변수의 값을 교환하는 데 유용하게 활용될 수 있습니다. 다만 실무 코드에서는 가독성과 유지보수성을 위해 list() 함수나 배열 구조 분해 할당을 사용하는 것이 일반적으로 권장됩니다.