2014-02-07 1 views
2

어디서나 답을 찾지 못하거나 전혀 이해할 수 없습니다. 그래서 PHP와 HTML 코드가 결합되었습니다. 책에서는 <?php ?>의 코드가 서버에서만 실행되며 html이 브라우저에 표시됩니다. 위의 브라우저에서 작동하고하나의 파일에 여러 개의 논리가 있습니다 <?php ?>

<?php if ($a = $b) { ?> 
    <p>Text when condition is true</p> 
<?php } else { ?> 
    <p>Text when condition is false</p> 
<?php } ?> 

을하지만, 두 문장이 출력하지 오류를 않는 이유를 이해하지 못하거나 적어도 그것을 출력해야한다 :하지만 이것을 이해하지 않습니다.

<?php 
if ($a = $b) 
{   
    echo "<p>Text when condition is true</p>" 
} else { 
    echo "<p>Text when condition is false</p>" 
}  
?> 

내가 여기서 뭘 그리워 : 나를 위해 문이 peaces로 분리되어 작동합니다 유일한 방법은 것 같다?

+1

다음은 개념을 이해하는 데 도움이 될 수 있습니다. http://www.php.net/manual/en/control-structures.alternative-syntax.php – Gohn67

+0

단일 및 다중 문자열을 많이 포함하는 문자열을 사용하면 더 많은 것을 이해할 수 있습니다. 네가 빠져 나가야 할 큰 따옴표. 그것은 훨씬 나아 보이고 템플릿 엔진으로 사용하는 데 문제가 발생하기 쉽습니다. 물론 PHP 위에 Twig와 같은 것을 사용하는 것이 좋습니다. – ceejayoz

+0

질문은 PHP 에코 대 스파게티 코딩을 사용하는 것에 관한 것입니다. – Shomz

답변

1

그것이 작동하는 방식입니다. PHP는 템플릿 언어이므로 여러분은 그런 트릭을 사용할 수 있습니다.

두 개의 PHP 블록 사이에있는 HTML 조각은 "이러한 문자 출력"으로 해석됩니다.

간단한 if/else 구조 나 루프가 별도의 위치에 있어야하는 심각한 백엔드 코드는 PHP와 HTML의 이러한 종류의 혼합을 최소한으로 유지하는 것이 좋습니다.

+0

고마워, 이제 내가 그런 트릭을 할 수 있다는 것이 분명해. [PHP 매뉴얼 링크 - 제어 구조를위한 대체 구문] (http://www.php.net/manual/en/control-structures.alternative-syntax.php) – ProgZi

1

전자는 조건에 따라 여러 html을 출력해야 할 때 유용합니다. 텍스트로 전체 div를로드해야한다고 가정 해보십시오. html로 처리하는 것이 더 쉽습니다. 예제와 같은 작은 조건의 경우 두 번째 예제가 더 적합합니다.

관련 문제