코어가 에코 대신 인쇄를 사용하는 이유는 무엇입니까?


24

나는 어딘가를 읽었고, 그것이 어디에서 echo데이터를 출력하는보다 효율적인 방법 인지 기억하지 못한다 print.

Drupal 코어가 왜 print그렇게 많이 사용 합니까? 그 뒤에 특별한 이유가 있습니까?


1
참고 사항 : print는 항상 1을 값으로 반환하고 echo는 아무 것도 반환하지 않습니다. 나는 그것이 어떤 경우에는 유용 ​​할 것이라고 생각합니다.
Bart

어떤 종류의 사건입니까?
jayarjo

나도 궁금했다! 좋은 질문!
aendrew

답변:


25

echo학업 환경에서만 더 빠릅니다. 그 차이는 매우 미미합니다. 방금 한 빠른 벤치 마크 : 2000 개 이상의 노드가있는 테이블에서 한 행을 가져 오는 시간은 1 단위입니다.

1 단위를 개선하려면 약 3.700.000 (3 마일 이상) print문을 로 대체해야합니다 echo. 다시 말해, 성능 향상을 원한다면 시작하기 어려운 곳입니다.

print보다 광범위한 경우에 사용될 수있는 것으로 보았을 때 echo, 첫 번째는 몇 가지 장점이 있습니다. 세 가지 옵션이 있습니다.

  • 항상 사용 print
  • echo가능한 곳에서 사용 하고 대체하십시오.print
  • 사용할 수없는 echo경우 항상 사용 하고 코드를 리팩터링하여 echo사용하십시오

Drupal은 처음에 기본값을 설정했습니다.

이것이 선택된 이유에 대한 실제 질문에 대답하려면 : 그렇지 않았습니다. 그것은 단순히 이런 식으로 성장했습니다.


에코를 사용할 수없는 경우의 예를 제공 할 수 있습니까? 지금은 전혀 상상할 수 없습니다.
jayarjo

6
가장 확실한 것은입니다 if (! print some_method() ) {print some_other_method()}. print 실제로 인쇄 된 경우 TRUE를 반환합니다. Echo는 아무것도 반환하지 않으므로 더 빠릅니다. 또 다른 예 return print $somevalue는 상태를 반환하는 메서드의 끝에 있습니다.
berkes
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.