복붙노트

PHP 반향 대 PHP 단축 태그

PHP

PHP 반향 대 PHP 단축 태그

그들은 안전함과 평등합니까? 나는

<?=$function_here?>

덜 안전했고 페이지로드 시간이 느려졌습니다. 나는 엄격하게 에코를 사용하는 편이다.

장점 / 단점은 무엇입니까?

해결법

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

    1.

    사실, PHP 5.3.0에서 제공되는 php.ini-production 파일에서는 기본적으로 비활성화되어 있습니다.

    $ grep 'short_open' php.ini-production
    ; short_open_tag
    short_open_tag = Off
    

    따라서 배포하려는 응용 프로그램에서 해당 응용 프로그램을 사용하는 것이 좋지 않을 수 있습니다. 사용하지 않으면 응용 프로그램이 작동하지 않습니다.

    짧은 오픈 태그가 반드시 활성화되지는 않는다는 점을 제외하고는 차이가별로 없다고 생각합니다.

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

    2.에코는 일반적으로 사용하는 것이 더 낫습니다. 왜냐하면 ...

    에코는 일반적으로 사용하는 것이 더 낫습니다. 왜냐하면 ...

    그러나, 그들은 일반적으로 동일합니다. 참조 :

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

    3.짧은 태그 사용 여부에 대한 반 종교적 논쟁을 제외하고는 좋은 생각이고 그것이 비추천되어야하는지 여부에 대한 원래 질문은 그들이 얼마나 안전하고 안전하지 않은지에 관한 것이었다.

    짧은 태그 사용 여부에 대한 반 종교적 논쟁을 제외하고는 좋은 생각이고 그것이 비추천되어야하는지 여부에 대한 원래 질문은 그들이 얼마나 안전하고 안전하지 않은지에 관한 것이었다.

    간단히 말해, 지원하지 않는 서버에서 짧은 태그를 사용하면 PHP 코드의 일부가 노출되어 보안 취약점으로 간주 될 수 있습니다.

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

    4.http://php.net/manual/en/language.basic-syntax.phpmode.php 상태 :

    http://php.net/manual/en/language.basic-syntax.phpmode.php 상태 :

    short_open_tag Off 또는 On은 더 이상 중요하지 않습니다.

    이제 걱정없이 템플릿에 다음과 같은 태그를 넣을 수 있습니다.

        <?= (($test) ? "val1" : "val2") ?>
    

    이제 공식적으로 "짧은 에코 태그"는 "짧은 태그"와 매우 다른 것입니다.

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

    5.PSR의 다른 소스를 광고하기 만하면됩니다 : http://www.php-fig.org/psr/psr-1/

    PSR의 다른 소스를 광고하기 만하면됩니다 : http://www.php-fig.org/psr/psr-1/

    지정 :

     <?php ?> and <?= ?>
    
  6. ==============================

    6.그렇다면 짧은 태그 열기를 해제하고 기본적으로 활성화되도록 옵션을 제거하지 않는 것이 어떻습니까?

    그렇다면 짧은 태그 열기를 해제하고 기본적으로 활성화되도록 옵션을 제거하지 않는 것이 어떻습니까?

    이것은 PHP에 의해 매우 위험한 움직임입니다. 그 이유는 PHP6 서버에 짧은 태그가있는 기존 코드를 삽입하고 누군가 해당 페이지를 볼 경우 브라우저에 다운로드 된 원시 코드를 볼 수 있기 때문입니다. 이것은 PHP를 심각하게 죽일 수 있습니다.

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

    7.당신은 <\? =를 사용하고 sysadmin / 호스트에게 short_open_tags를 켜도록 요청해야합니다. 해제 할 단점이 없으며 속도 저하가 없으며 파서는 <\? 그것은 인덱스 내부의 <\? php와 같은 방법으로, binnary 검색 (아마 또한 이미 PHP 5.5에서 <\? =가 기본적으로 사용되며 <\? php semi semirecated 동안 장기적으로 <\? =가 선호됩니다. surte 아직 아니라면 .. 검색의 비트가 많은 도움이 D 조

    당신은 <\? =를 사용하고 sysadmin / 호스트에게 short_open_tags를 켜도록 요청해야합니다. 해제 할 단점이 없으며 속도 저하가 없으며 파서는 <\? 그것은 인덱스 내부의 <\? php와 같은 방법으로, binnary 검색 (아마 또한 이미 PHP 5.5에서 <\? =가 기본적으로 사용되며 <\? php semi semirecated 동안 장기적으로 <\? =가 선호됩니다. surte 아직 아니라면 .. 검색의 비트가 많은 도움이 D 조

  8. from https://stackoverflow.com/questions/1386620/php-echo-vs-php-short-tags by cc-by-sa and MIT license