2012-05-10 6 views
0

PHP와 HTML로 페이지를 렌더링하는 가장 효율적인 방법은 무엇입니까?HTML과 PHP를 렌더링하는 가장 효율적인 방법

여러개 쓰기

$html = '<span><img src="page.png" alt="page" />'.$variable1.'</span>'; 
echo $html 

교체 변수

$html = "<span><img src=\"page.png\" alt=\"page\" />{$variable1}</span>"; 
echo $html; 

인라인 PHP 태그 -이 그것을 대규모

<span><img src="page.png" alt="page" /><?php echo $variable1; ?></span> 

에 가장 효율적인하십시오 경우에도 실제하지 않는 것 전체 페이지를 생성한다고 가정하십시오. 위의 스 니펫을 각 방법의 예제로 사용했습니다.

감사합니다.

+0

대신'의',''방법 (참고. 'concatenation)','는 하나씩 차례대로 출력합니다. – tigrang

답변

1

정말 목표 달성에 달려 있습니다.

단순한 페이지를 렌더링하는 경우 가장 효율적인 방법은 작은 따옴표 (벤치 마크 기준)를 사용하여 코드를 연결하는 것입니다 (차이점이 그다지 중요하지 않더라도).

하지만 웹 사이트를 구축하고 있으며 html + PHP를 널리 사용한다고 생각합니다. 그렇다면 템플릿 엔진을 사용하거나 직접 PHP를 사용하는 것이 좋습니다.

모든 템플릿 엔진을 사용하면 성능이 떨어지지 만 프로젝트의 가독성이 향상되고 더 나은 방식으로 구조가 구성됩니다. "성능 저하"/ "가독성 유지"비율은 그만한 가치가 있습니다. 많은 html 페이지를 렌더링하려는 경우 다시 시도해야합니다. MVC Design Pattern을 참조하십시오.

이제 템플릿 엔진의 경우 PHP를이 용도로 개발 한 이후로 직접 ​​사용하는 것이 좋습니다. 마지막으로 템플릿에서 PHP를 사용하는 많은 템플릿 엔진을 찾을 수 있으며 Frameworks에도 똑같이 적용됩니다. 예를 들어 Code Igniter을 살펴보면 템플릿이 php로 만들어져 있음을 알 수 있습니다.

이제 보안상의 이유로 템플릿에서 PHP를 사용하는 것은 템플릿을 누가 편집 할 것인가에 따라 크게 달라집니다. 그것이 당신이나 전적으로 신뢰하는 사람 일 경우, 당신은 그것을 위해 가야합니다. 사용자가 템플릿을 편집 할 수있는 경우 (이유가 무엇이든) 데이터베이스를 사용하거나 모든 파일 (심지어 구성 파일)을보고 서버에서 원하는 작업을 수행 할 수 있기 때문에 절대적으로 피해야합니다.

+0

템플릿 엔진이란 무엇입니까? –

+0

전역 정의를 이해하지 못했거나보다 정확한 정보를 원한다면 잘 모르겠습니다. 위키 백과, http://en.wikipedia.org/wiki/Template_processor 및 http://en.wikipedia.org/wiki/Template_engine_(web) –

+0

에서 제공하는 정의를 참조해야합니다. 템플릿 엔진이란 하나는 데이터 또는 데이터 모델을 다른 방식으로 나타냅니다. 그러나 PHP와 관련하여 템플릿 엔진이란 무엇입니까? 그것은 MVC 패턴 또는 다른 것의 "뷰"입니까? \ –

0

가장 좋은 방법은 읽기 쉽고 유지 보수가 용이 한 방법입니다.

템플릿 템플릿 (twig 또는 smarty)을 사용 하겠지만 템플릿을 사용할 수 없다면 젠드 프레임 워크 뷰와 Symfony 성공 템플릿의 뷰에서 사용되는 인라인 PHP 태그를 사용해야합니다.

PHP 내부에서 html을 생성해야한다면 sprinft('<img src="%s">", $src'); 또는 concatination으로 이동하십시오.

나는 정말로, {$var} 또는 $html = "$var"의 사용을 싫어합니다.

+0

페이지 크기에 따라 http://www.phpbench.com/ ... 참조하십시오. 어쨌든 마이크로 최적화가 적용됩니다. – djot

+0

그게 바로 내가 성능에 대해 투표하는 이유이지만 '읽기 쉽고 유지할 수있는'것에 대한 것입니다. 내 게시물 상태의 시작으로. –

0

문제 나 성능에 충분한 성능 차이가 없습니다. 가장 읽을 수있는 것을하십시오.내 (많은) PHP 애플리케이션에서 나는 대부분 짧은 태그가 내장 PHP 대체를 사용 또한 '에코'page ', $ 변수 1,' '있다

<p><?= $text ?></p> 
+1

일부 호스트/서버가 afaik를 비활성화하기 때문에 shortags를 사용하지 않는 것이 좋습니다. – tigrang

+0

짧은 태그는 서버 설정에 관계없이 항상 PHP 5.4부터 사용할 수 있습니다. http://www.php.net/ChangeLog-5.php#5.4.0 –

+0

자신의 웹 서버와 설정을 제어하는 ​​경우 문제가되지 않습니다. ISP가 어떤 이유로 짧은 태그를 비활성화 한 경우 ISP를 전환하거나 텍스트 편집기를 사용하여 짧은 태그를 찾아서 바꾸어 긴 태그로 변환 할 수 있습니다. 짧은 태그는 실제로 문제가 아닙니다. – gregjor

관련 문제