2010-04-18 2 views
7

실제로는 렌더링 할 일부 HTML 코드를 표시하려면 '닫기 PHP'태그를 사용하고 HTML 그런 다음 PHP를 다시 엽니 다. 예를 들어'echo'또는 '프로그래밍'에서 제외 HTML 쓰기 PHP 코드 다시 시작

<?php 
// some php code 
?> 
<p>HTML that I want displayed</p> 
<?php 
// more php code 
?> 

하지만 난 그냥 에코 대신 사용하는 것이 많은 사람들을 보았다, 그래서 그들은

<?php 
// some php code 
echo("<p>HTML that I want displayed</p>"); 
// more php code 
?> 

같은 뭔가 위를했을 것 같은 다시 중퇴하고 그들의 모든 성능 저하가 그? 나는 PHP 엔진이 전체 파일을 어느 쪽이든 처리해야 할 것이라고 생각하지 않습니다.

당신이 함수처럼 보이지 복용량 방식으로 에코 기능을 사용할 때 무엇에 대해, 예를 들어

echo "<p>HTML that I want displayed</p>" 

나는 이것이 순전히 취향의 문제입니다 희망,하지만 난 알고 싶습니다 나는 뭔가를 놓치고 있었다. 필자는 개인적으로 PHP와 HTML을 명확히 구별하는 데 도움이되는 첫 번째 방법을 선호합니다 (PHP에서 다시 빠져 나옴). HTML 강조 표시와 힌팅을 사용하면 편리합니다.

답변

6

첫 번째 유형이 언급 된 이유 때문에 정확해야합니다.

사실, 전체 HTML 덩어리를 반향하는 것은 나쁜 습관으로 간주됩니다.

+0

간단한 링크와 같이 짧으면 HTML을 반향 출력해도 괜찮습니다 ... – selfawaresoup

+0

간단한 링크를 반향하면 이스케이프 처리가 필요합니다. '' . $caption . ''; 사용하는 경우 "구분 기호의 경우 변수 대신 속성에서 벗어나야합니다. 못 생겼어. –

+0

인라인 코딩에 echo를 사용합니다 (). 보다 큰 동적 사이트를 만들려면 첫 번째 옵션 인 – Neale

1

아니요, 표시 할 수있는 성능 향상은 없습니다.

때로는 PHP 태그를 닫는 것보다 에코를 사용하여 콘텐츠를 출력하는 것이 더 쉽습니다 (예를 들어, while 또는 while 루프 일 때).

0

동일한 양식을 두 번째로 변환하는 전처리 기가 있다고 생각합니다. 그것은 어쨌든 ASP.NET에서 일어나는 일입니다. ASP.NET과 클래식 ASP 모두에서 루프는 실제로 원시 HTML 영역에 걸쳐 확장 될 수 있습니다.

+0

을 사용하십시오. PHP에서 '처리 중'일뿐입니다 ... 도구를 실행하고 지점을 최적화 할 수 있지만 실행될 때마다 해석됩니다. – thecoshman

+0

어떤 종류의 훌륭한 성능을 얻으려면 모든 것을 추상 구문 트리로 구문 분석해야합니다. 텍스트를 직접 해석하는 것은 가ly게 느립니다. 이러한 템플릿 시스템의 많은 경우, 두 양식의 구문 분석 트리는 동일합니다 (문자열 리터럴과 출력 명령을 나타내는 노드). –

0

성능 차이가 전혀 없습니다.

가장 읽기 쉬운 코드를 생성하는 스타일. 실제 상황에 따라 둘 중 하나가 될 수 있습니다.

하지만 가능하면 HTML과 PHP를 함께 사용하지 않는 것이 좋습니다. 이것은 귀하의 견해에 대한 템플릿 시스템을 사용하여 수행 할 수 있습니다.

+2

PHP는 템플릿 시스템입니다. –

+0

정확히, 템플릿을 만들기 위해 다른 레이어를 구현할 필요가 없습니다. –