PHP에서 Echo와 Print는 어떻게 다릅니 까? [복제하다
문제
가능한 복제 :
참조 : PHP의 인쇄와 에코 비교
PHP 의이 두 기능 사이에 주요한 주요 차이가 있습니까?
해결책
에서:http://web.archive.org/web/20090221144611/http://faqts.com/knowledgebase/view.phtml/aid/1/fid/40
속도. 둘 사이에는 차이가 있지만 속도는 속도와 관련이 있어야합니다. Echo는 실제로 니티 gritty로 내려 가고 싶다면 반환 값을 설정하지 않기 때문에 약간 빠릅니다.
표현.
print()
할 수있는 기능처럼 행동합니다.$ret = print "Hello World"
; 그리고$ret
될거야1
. 즉, 인쇄는 Echo가 할 수없는보다 복잡한 표현의 일부로 사용할 수 있습니다. PHP 매뉴얼의 예 :
$b ? print "true" : print "false";
인쇄는 또한 복잡한 표현식 내에서 사용해야하는 경우 선행 테이블의 일부입니다. 그러나 그것은 우선 순위 목록의 맨 아래에 있습니다. 오직 ","및 또는 xor는 더 낮습니다.
- 매개 변수. 문법은 다음과 같습니다.
echo expression [, expression[, expression] ... ]
하지만echo ( expression, expression )
유효하지 않습니다. 이것은 유효합니다 :echo ("howdy"),("partner")
; 동일 :echo "howdy","partner"
; (간단한 예제에 브래킷을 넣는 것은 그와 같은 단일 용어로 연산자 우선 순위 문제가 없기 때문에 목적이 없습니다.)
따라서 괄호가없는 에코는 여러 매개 변수를 가져갈 수 있으며, 이는 다음과 같습니다.
echo "and a ", 1, 2, 3; // comma-separated without parentheses
echo ("and a 123"); // just one parameter with parentheses
print()
하나의 매개 변수 만 가져갈 수 있습니다.
print ("and a 123");
print "and a 123";
다른 팁
그들은:
- 인쇄는 하나의 매개 변수 만 가져오고 Echo에는 여러 매개 변수가있을 수 있습니다.
- 인쇄는 값 (1)을 반환하므로 표현식으로 사용할 수 있습니다.
- 에코는 약간 빠릅니다.
위의 답변에 추가하기 위해 인쇄물은 하나의 매개 변수 만 가져갈 수 있지만 여러 값 (즉)을 연결할 수 있습니다.
$count = 5;
print "This is " . $count . " values in " . $count/5 . " parameter";
이것은 1 매개 변수의 5 값입니다
제 생각에는 print()
보다 느립니다 echo
.
나는 사용하는 것을 좋아한다 print()
다음과 같은 상황에 대해서만 :
echo 'Doing some stuff... ';
foo() and print("ok.\n") or print("error: " . getError() . ".\n");
php.net 매뉴얼에서 알 수 있듯이 이 토론.
한 가지 주요 차이점은 echo
출력하려면 여러 매개 변수를 사용할 수 있습니다. 예 :
echo 'foo', 'bar'; // Concatenates the 2 strings
print('foo', 'bar'); // Fatal error
출력 명령문의 결과를 평가하려면 (아래와 같이) 사용 print
. 그렇지 않은 경우 사용하십시오 echo
.
$res = print('test');
var_dump($res); //bool(true)