[PHP] PHP 문자열 큰따옴표(") 와 작은따옴표(') 의 차이점



PHP 에서 문자열 작성시에는 아래와 같이 큰따옴표("") 나, 작은따옴표('')를 사용하여 표현합니다.


<?php $a = "double quote"; $b = 'single quote'; ?>


무분별하게 사용하기도 하지만 문자열사용시 큰따옴표("") 와 작은따옴표('')를 사용하는 것은 PHP 내부적으로 차이가 있습니다.





PHP는 문자열을 다룰 때 큰따옴표 안의 문자열의 경우 변수를 찾아내는 과정을 거칩니다.

반면, 작은 따옴표 안의 문자열의 경우 순수 문자열로 인식하여 그대로 보여주게 됩니다.


<?php $text = " 입니다"; echo "double quote $text"; //실행결과 : double quote 입니다. echo 'single quote $text'; //실행결과 : single quote $text ?>


위 예제의 경우 큰따옴표("") 안의 문자열에 사용한 변수는 변수의 값이 제대로 적용 된 데 반해, 작은따옴표('') 안의 변수는 그대로가 문자로 표현되었습니다.


큰따옴표("") 와 작은따옴표('') 의 차이는 변수의 처리 뿐만아니라 확장문자 의 처리에서도 존재합니다.

줄을 개행시켜주는 개행문자 \n 의 경우 큰따옴표안에서는 개행문자로 인식하지만, 작은 따옴표안해서는 일반 문자열로 인식됩니다.


<?php echo "double quote \n"; //실행결과 : double quote echo 'single quote \n'; //실행결과 : single quote \n ?>


위와 같이 작은따옴표 안에서는 대부분의 확장문자가 문자열로 인식되기때문에, 확장문자를 써야하는 경우 큰따옴표("")를 써야합니다.

단, 예외적으로 \' 나 \\ 의 경우 작은따옴표('') 안에서도 사용가능합니다.


<?php echo "사용가능 확장문자 \'"; //실행결과 : 사용가능 확장문자 \' echo '사용가능 확장문자 \''; //실행결과 : 사용가능 확장문자 ' ?>


위의 경우 큰따옴표("") 안에서는 \' 가 문자열로 처리된 반면, 작은따옴표('') 안에서는 확장문자로 처리되었습니다.

상황에 맞게 잘 사용하도록합시다!




+ Recent posts

티스토리 툴바