PHP 학습의 일환으로 의미를 형식화하려고합니다. 이 작업을 단순화하는 가장 좋은 방법은 가능한 한 많은 구문을보다 근본적인 표현을위한 "구문 설탕"으로 이해하는 것입니다. 그런 식으로 나를위한 구문을 정의하는 구문 양식이 적습니다.Desugaring PHP 구문
PHP에는 많은 양의 문법이 포함되어있는 것으로 보입니다. 몇 가지 예 : if { ... }
에
if/endif
및 기타 "대안 구문"desugar,expr1; while (expr2) { statements; expr3; }
에 등for (expr1; expr2; expr3) { statements; }
desugars.다음 내용이 참이라고 생각합니다.
$foo
은${'foo'}
을 의미합니다. 즉, 변수를 이름으로 참조하는 것은 표현식을 문자열로 평가하여보다 일반적인 변수 조회의 인스턴스에 불과합니다. 이에<p>foo</p> <?php echo 5; ?> <p>bar</p>
desugars :
- 나는이 생각
echo "<p>foo</p>\n"; echo 5; echo "<p>bar</p>\n";
또는 일반적으로
이?>blah<?php
그냥echo 'blah';
을 의미한다.
확실히 많은 다른 사례가 있습니다. 나는 포괄적이고 정확한 것으로 확인 된 목록을 제시하고자합니다. (그리고 내 예 중 하나는 부정확 할 수있다, 그래서 저를 수정하시기 바랍니다!)
필자는 보통 ' php echo 5;와 반대로'= 5 ?> '이라고 쓰고 있습니다. ?>' – saada
'for '가 통사론이라고 생각하십니까? :) –
* blah * 예에서 완전히 잘못되었습니다. '?> blah php'에는 실행 가능한 PHP 부분이 없습니다. 당신은 사진에서 PHP를 완전히 가져오고 출력 파이프/버퍼/etc가 사용 중인지에 * blah *를 보내고 있습니다. – Phil