PHP의 print() 함수는 하나 이상의 문자열을 화면에 출력하는 데 사용되는 언어 구조(language construct)입니다. 실제 함수가 아니기 때문에 괄호 없이도 호출할 수 있으며, 표현식(expression) 내부에서도 사용할 수 있다는 점이 특징입니다.
참고: print() 함수는 항상 값을 반환하기 때문에 echo보다 실행 속도가 약간 느립니다. 단순히 문자열만 출력할 때는 echo를 사용하는 것이 성능 면에서 유리합니다.
문법(Syntax)
print(arg)
print()는 언어 구조이므로 아래와 같이 괄호 없이 작성해도 정상적으로 동작합니다.
print arg
매개변수(Parameters)
arg − 출력하고자 하는 입력 데이터입니다. 문자열 또는 문자열로 변환 가능한 값이 지정됩니다.
반환값(Return)
print() 함수는 항상 1을 반환합니다. 이 특성 덕분에 조건문이나 표현식 안에서도 사용할 수 있습니다.
<?php
if (print("Hello")) {
// print()가 1을 반환하므로 항상 실행됩니다.
}
?>
예제 1: 기본적인 문자열 출력
다음은 변수에 저장된 문자열을 출력하는 기본 예제입니다.
<?php $s = "This is demo text!"; print $s; ?>
출력 결과
This is demo text!
예제 2: 여러 문자열 연결하여 출력
문자열 연결 연산자(.)를 사용하면 여러 개의 문자열을 하나로 묶어 출력할 수 있습니다.
<?php $one = "Java is a programming language!"; $two = "James Gosling developed Java!"; $three = "Current version of Java is Java SE 11!"; print $one . " " . $two . " " . $three; ?>
출력 결과
Java is a programming language! James Gosling developed Java! Current version of Java is Java SE 11!
예제 3: 여러 줄에 걸친 문자열 출력
코드에서 여러 줄로 작성된 문자열도 브라우저에서는 한 줄로 출력됩니다. HTML에서는 연속된 공백과 줄바꿈이 하나의 공백으로 처리되기 때문입니다.
<?php print "This is a demo text in multiple lines."; ?>
출력 결과
This is a demo text in multiple lines.
print()와 echo의 차이점
반환값:
print()는 항상 1을 반환하지만,echo는 아무 값도 반환하지 않습니다.인자 개수:
echo는 쉼표로 구분하여 여러 인자를 동시에 출력할 수 있지만,print()는 하나의 인자만 받습니다.속도: 반환값 처리가 없는
echo가 미세하게 더 빠릅니다.
두 구조 모두 실제 함수가 아니므로 성능에 큰 차이는 없으며, 코드 스타일에 따라 선택하여 사용하면 됩니다.