[php] PHP에서 ‘<? =’은 무슨 뜻입니까?

<?php

$a=1;

?>
<?=$a;?>

<?=정확히 무엇을 의미합니까?



답변

에 대한 속기입니다 <?php echo $a; ?>.

설정에 관계없이 5.4부터 기본적으로 사용됩니다 php.ini.


답변

이것은 속기입니다.

<?php echo $a; ?>

이를 짧은 태그라고합니다. 설명서의 예제 # 2를 참조하십시오 .


답변

그것이 의미하는 것을 반복하기 위해 어떤 값도 추가하지 않기 때문에 echoPHP에서 의미하는 것이 무엇인지 정확하게 알고 싶다고 생각 했습니다 .

Array
(
    [0] => Array
        (
            [0] => 368 // T_OPEN_TAG_WITH_ECHO
            [1] => <?=
            [2] => 1
        )
    [1] => Array
        (
            [0] => 309 // T_VARIABLE
            [1] => $a
            [2] => 1
        )
    [2] => ; // UNKNOWN (because it is optional (ignored))
    [3] => Array
        (
            [0] => 369 // T_CLOSE_TAG
            [1] => ?>
            [2] => 1
        )
)

이 코드를 사용하여 직접 테스트 할 수 있습니다.

$tokens = token_get_all('<?=$a;?>');
print_r($tokens);
foreach($tokens as $token){
    echo token_name((int) $token[0]), PHP_EOL;
}

로부터 해석기 토큰 목록 , 여기에 무엇을 T_OPEN_TAG_WITH_ECHO 링크입니다 .


답변

<?= $a ?><? echo $a; ?>편의상 단축형 과 같습니다 .


답변

PHP 5.4.0부터
<?= ?>
php.ini에 short_open_tag를 설정하지 않아도 항상 사용할 수 있습니다.

또한 PHP 7.0부터 ASP 태그 :
<%, %>
및 스크립트 태그
<script language="php">
가 PHP에서 제거되었습니다.


답변

<?=$a; ?>

다음에 대한 바로 가기입니다.

<?php echo $a; ?>


답변

이 활성화 되어 <?php echo $a; ?>있으면 바로 가기입니다 short_open_tag. 참조 : http://php.net/manual/en/ini.core.php