<?php
$a=1;
?>
<?=$a;?>
Что <?=
именно означает?
;
это избыточно; поскольку ответы предполагают, что этот короткий тег расширяется до точки echo
с точкой с запятой, добавленной в конце согласно документам php .
<?php
$a=1;
?>
<?=$a;?>
Что <?=
именно означает?
;
это избыточно; поскольку ответы предполагают, что этот короткий тег расширяется до точки echo
с точкой с запятой, добавленной в конце согласно документам php .
Ответы:
Это сокращение для <?php echo $a; ?>
.
Он включен по умолчанию с 5.4 независимо от php.ini
настроек.
<?=
для всего <?php echo
проекта будет недостаточно. Во всяком случае, на сегодняшний день, я надеюсь, что у вас, ребята, нет рабочих серверов под управлением PHP <5.6, так как эти версии больше не поддерживаются ( поддерживаемые версии PHP ).
Это сокращение для этого:
<?php echo $a; ?>
Они называются короткими метками; см. пример № 2 в документации .
short_open_tag = On
Поскольку повторение того, что это означает 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;
}
Из списка токенов парсера , вот что T_OPEN_TAG_WITH_ECHO ссылается на .
<?= $a ?>
так же, как <? echo $a; ?>
просто сокращение для удобства.
Это ярлык, <?php echo $a; ?>
если short_open_tag
s включены. Ссылка: http://php.net/manual/en/ini.core.php
Я надеюсь, что это не осуждается. Хотя написание <? blah code ?>
XXTML довольно ненужно и его можно спутать <?=
, по понятным причинам это не так. К сожалению, я им не пользуюсь, потому что short_open_tag кажется отключенным все больше и больше.
Обновление: я <?=
снова использую сейчас, потому что он включен по умолчанию с PHP 5.4.0. Смотрите http://php.net/manual/en/language.basic-syntax.phptags.php