복붙노트

PHP 짧은 태그는 사용할 수 있습니까?

PHP

PHP 짧은 태그는 사용할 수 있습니까?

다음은 공식 문서에 따른 정보입니다.

내 경험상 대부분의 서버는 짧은 태그를 사용하도록 설정했습니다. 타자

<?=

타이핑보다 훨씬 편리합니다.

<?php echo 

프로그래머의 편의는 중요한 요소이므로 권장하지 않는 이유는 무엇입니까?

해결법

  1. ==============================

    1.

    코드가 지원되지 않는 서버로 코드를 옮겨야하는 경우 PITA이기 때문에 권장하지 않습니다 (사용하도록 설정할 수도 없습니다). 여러분이 말했듯이 많은 공유 호스트가 단문을 지원하지만 "많은"것이 전부는 아닙니다. 스크립트를 공유하려면 전체 구문을 사용하는 것이 가장 좋습니다.

    나는 그것이

    나는 이유로써 가독성을 사지 않는다. 대부분의 심각한 개발자는 구문 강조 기능을 사용할 수 있습니다.

    ThiefMaster가 주석에서 언급 한 것처럼, PHP 5.4에서 태그는 단문 태그 설정에 관계없이 모든 곳에서 지원됩니다. 이것은 그들이 이식 가능한 코드에서 사용하는 것이 안전하다는 것을 의미 할 것이다. 그러나 그것은 PHP 5.4+에 대한 의존성을 의미한다. 5.4 이전 버전을 지원하고 shorttags를 보장 할 수 없다면 를 사용해야합니다.

    또한 ASP 태그 <%, %>, <% = 및 script 태그가 PHP 7에서 제거되었음을 알아야합니다. 따라서 장기간 이식 가능한 코드를 지원하고 가장 현대적인 도구로 전환하고 싶다면 코드의 해당 부분을 변경합니다.

  2. ==============================

    2.

    나는 그것을 너무 좋아한다. 절대로 문제가 없었습니다. 내가 엉덩이에 물릴 때까지 기다릴께. 모든 진지하게, (나의) 고객의 85 %는 드물게 php.ini에 접근 할 수 있습니다. 나머지 15 %는 주류 호스팅 제공 업체를 사용하며 거의 모든 호스팅 제공 업체에서 호스팅 서비스를 사용할 수 있습니다. 나는 그들을 사랑해.

  3. ==============================

    3.

    PHP 5.4부터 에코 단축키는 항상 활성화되므로 짧은 태그와는 별개의 문제입니다. 그것은 사실입니다.

    따라서 에코 바로 가기 (

  4. ==============================

    4.

    이 전체 토론의 문제점은 PHP를 템플릿 언어로 사용하는 데 있습니다. 태그가 애플리케이션 소스 파일에 사용되어야한다고 주장하는 사람은 없습니다.

    그러나 PHP의 임베디드 구문을 사용하면 강력한 템플릿 언어로 사용할 수 있으며 가능한 한 간단하고 읽기 쉬운 템플릿이어야합니다. 많은 사람들이 Smarty와 같이 훨씬 느린 애드온 템플릿 엔진을 사용하는 것이 더 쉽지만 빠른 렌더링과 순수한 코드 기반이 필요한 사람들에게는 PHP 만 템플릿을 쓸 수있는 방법입니다.

    짧은 태그를 사용하는 경우에만 유효한 인수는 모든 서버에서 지원되지 않는다는 것입니다. PHP와 XML을 어쨌든 섞어서는 안되기 때문에 XML 문서와의 충돌에 대한 의견은 우스꽝 스럽다. 그렇다면 PHP를 사용하여 텍스트 문자열을 출력해야합니다. 데이터베이스 액세스 자격 증명과 같은 중요한 정보를 템플릿 파일 내에두면 보안 문제가 발생하지 않으므로 더 큰 문제가 발생합니다.

    이제 서버 지원 문제에 관해서는 인정할 수밖에 없지만 대상 플랫폼에 대해 알고 있어야합니다. 공유 호스팅이 가능한 대상이면 짧은 태그는 피해야합니다. 그러나 많은 전문 개발자 (나 자신과 같은)에게, 클라이언트는 우리가 서버 요구 사항을 지시 할 것이라는 점을 인정한다 (그리고 사실에 의존한다). 종종 나는 서버를 직접 설치해야 할 책임이있다.

    그리고 우리는 서버 구성에 대한 절대적인 통제를 제공하지 않는 호스팅 제공 업체와 함께 일하지 않습니다. 짧은 태그 지원을 잃는 것보다 훨씬 더 많은 문제를 해결할 수있는 경우가 있습니다. 그것은 단지 일어나지 않습니다.

    그래서 예 - 저는 짧은 태그의 사용이 신중하게 고려되어야한다는 것에 동의합니다. 그러나 나는 또한 항상 선택권이 있어야하며, 자신의 환경을 알고있는 개발자가 자유롭게 사용할 수 있어야한다고 굳게 믿는다.

  5. ==============================

    5.

    젠드 프레임 워크 (Zend Framework)가 기본 MVC 구성에서 "PHP를 템플릿 언어로 사용"함으로써 짧은 태그가 다시 제공됩니다. 논쟁이 무엇인지는 모르겠지만 평생 동안 만들 소프트웨어의 대부분은 귀하 또는 귀하의 회사가 관리 할 서버에서 작동합니다. 일관성을 유지하는 한 아무런 문제가 없어야합니다.

    최신 정보

    긴 형식을 사용하는 Magento로 꽤 많은 작업을 한 후에. 그 결과 필자는 다음과 같은 긴 형식으로 전환했습니다.

    <?php and <?php echo
    

    위에

    <? and <?=
    

    상호 운용성 보장을위한 소량의 작업처럼 보입니다.

  6. ==============================

    6.

    왜냐하면 XML 선언을 사용하여 생성 할 수 있기 때문입니다. 그래도 많은 사람들이 동의합니다.

    추가적인 관심사는 짧은 태그만으로 모든 것을 코드화하여 결국 최종 호스팅 서버가 꺼져 있다는 것을 알아내는 것입니다.

  7. ==============================

    7.

    다음은 동일한 흐름도입니다.

    출처 : 소프트웨어 공학 스택 교환에 관한 비슷한 질문

  8. ==============================

    8.

    http://uk3.php.net/manual/en/language.basic-syntax.phpmode.php에는 다음과 같은 조언이 많이 있습니다.

  9. ==============================

    9.

    누군가가 여전히주의를 기울이고있는 경우 ... PHP 5.4.0부터 Alpha 1

    http://php.net/releases/NEWS_5_4_0_alpha1.txt 따라서 짧은 태그는 (a) 수용 가능하고 (b) 여기에 머물러있는 것처럼 보입니다. 지금은 적어도 ...

  10. ==============================

    10.

  11. ==============================

    11.

    참고 : PHP 5.4부터 짧은 태그 인

  12. ==============================

    12.

    주제에 대한 정보를 찾은 후에이 페이지를 읽었습니다. 한 가지 중요한 문제가 언급되지 않았다고 느낍니다. 게으름 대 일관성입니다. PHP의 "진짜"태그는 입니다. 왜? 나는 상관하지 않는다. PHP 용으로 분명히 사용할 때 왜 다른 것을 사용하고 싶습니까? <% 및 %>는 ASP를 의미하고