[英]What does '<?=' mean in PHP?
<?php
$a=1;
?>
<?=$a;?>
<?=
究竟是什么意思?
它是<?php echo $a; ?>
的簡寫<?php echo $a; ?>
<?php echo $a; ?>
.
無論php.ini
設置如何,它自 5.4 起默認啟用。
因為它不會添加任何值來重復它意味着echo
,我想你想看看在 PHP 中到底是什么意思:
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;
}
<?= $a ?>
與<? echo $a; ?>
<? echo $a; ?>
<? echo $a; ?>
,只是為了方便起見。
<?=$a; ?>
是一個快捷方式:
<?php echo $a; ?>
從 PHP 5.4.0 開始,即使沒有在 php.ini 中設置 short_open_tag, <?= ?>
也始終可用。
此外,從 PHP 7.0 開始,ASP 標簽: <%, %>
和腳本標簽<script language="php">
已從 PHP 中刪除。
這是<?php echo $a; ?>
的快捷方式<?php echo $a; ?>
<?php echo $a; ?>
如果啟用了short_open_tag
。 參考: http : //php.net/manual/en/ini.core.php
我希望它不會被棄用。 在寫<? blah code ?>
<? blah code ?>
與 XHTML 相當不必要且容易混淆, <?=
不是,原因很明顯。 不幸的是我不使用它,因為 short_open_tag 似乎越來越被禁用。
更新:我現在再次使用<?=
,因為它在 PHP 5.4.0 中默認啟用。 見http://php.net/manual/en/language.basic-syntax.phptags.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.