좋아, 사람이 바로 나에게 PHP 코드의 조각을 표시하고 파일의 끝에 나는 길 잃은 <?php } ?>
을 보았다. 컴파일 오류가 발생한다고 생각했지만 그렇지 않습니다.PHP의 경우 '다른 코드 블록에 걸쳐
는 왜 :
<?php
if(1==1){
?>
X
<?php } ?>
유효?
는 여러 PHP 블록으로 문을 분할 안전한가요?
PS : 나는 그 답 "예"에서 더 많은 뭔가를 기다리고 있었다 : D
좋아, 사람이 바로 나에게 PHP 코드의 조각을 표시하고 파일의 끝에 나는 길 잃은 <?php } ?>
을 보았다. 컴파일 오류가 발생한다고 생각했지만 그렇지 않습니다.PHP의 경우 '다른 코드 블록에 걸쳐
는 왜 :
<?php
if(1==1){
?>
X
<?php } ?>
유효?
는 여러 PHP 블록으로 문을 분할 안전한가요?
PS : 나는 그 답 "예"에서 더 많은 뭔가를 기다리고 있었다 : D
: 열기 태그와 닫기 태그 한 쌍의 외부
모든 것이 PHP 파일이 혼합 된 콘텐츠를 수있는 PHP 파서에 의해 무시됩니다. 이 을 사용하면 PHP를 HTML 문서에 포함 할 수 있습니다. 예를 들어 템플릿을 만들 수 있습니다. PHP의 신비한 세계에
에 오신 것을 환영합니다.
안전? 예.
읽을 수 있습니까? 그렇지 않아. 가능한 한 당신의 HTML와 PHP 로직을 혼합
마십시오. 이것이 독서를 어렵게 만들고 코드를 이해하기가 어렵 기 때문에 이것이 좋은 아이디어 인 경우는 거의 없습니다.
예, 괜찮습니다.
그것은 종종 HTML의 큰 블록 "PHP 모드"에서 떨어 유용 -이 기술은 어디서나 HTML을 사용하고 PHP가 혼합되어 나타납니다.
설명이없는 "예"가 도움이되지 않아 답변이 일정한 길이 여야합니다. –
예 그건 괜찮지 만, 내가 제안 :
<?php if(1==1):?>
X
<?php endif; ?>
그것은 만드는 조금 더 읽기 후 임의 {
및
그것은 유효 }
하지만 not recommended
당신은 코드를 갖고 싶어 그것은 장기적으로 유지 보수가 가능하고 판독 가능하다.
당신은 PHP에서 때마다 "출구", 당신은 HTML를 입력 명심해야합니다. manual에서
파서가이를 무시하면 조건이 거짓 일 때 X가 표시되지 않습니다. O_o – Cristy
인터프리터는 파서가 아닌 이것을 처리하기 때문에. 통역사는 무엇을 건너 뛰어야할지 결정하기 전에 조건부 결과를 결정합니다. 조건이 충족되지 않은 블록은 PHP 열기/닫기 태그 외부에 있더라도 PHP는 블록을 건너 뜁니다. PHP 인터프리터가 충족되지 않은 조건에 포함 된 블록을 뛰어 넘을 것이기 때문에 PHP는 조건에 따라 스크립트를 건너 뜁니다. ([매뉴얼에서 거의 인용하고 있습니다.] (http://php.net/manual/en/language.basic-syntax.phpmode.php)) – ghbarratt