6

这条线是什么意思

<input type=text name="name" value="<?= $name ?>

如果我们要声明为 PHP,我们不应该写<?php instead of <?=

谢谢


<?= ... ?>简写_<?php echo ... ?>

4

3 回答 3

15

<?=是 PHP 短开放标签,可以通过(quoting)short_open_tag中的指令启用(或禁用) :php.ini

该指令还影响速记<?=,它与<? echo. 使用此快捷方式short_open_tag需要on.

和:

此外,如果禁用,您必须使用 PHP 开放标记 ( <?php ?>) 的长格式。

这意味着您的代码部分:

<input type=text name="name" value="<?= $name ?>

相当于这个:

<input type=text name="name" value="<?php echo $name; ?>

但仅当启用短开标签时

并且,作为旁注:短打开标签并不总是启用 - 事实上,它们在默认情况下被禁用,最近版本的 PHP。

这意味着不依赖这些可能是明智的,至少如果您想将应用程序部署在您不是管理员的服务器上。

于 2009-12-24T18:12:08.220 回答
10

<?= ... ?>简写_<?php echo ... ?>

于 2009-12-24T18:08:03.177 回答
3

如今,使用短标签通常不受欢迎,但它仍然是 php.ini 中的一个选项。没关系,只是编码风格很差,如果您使用多种动态语言会产生一些影响。

于 2009-12-24T18:08:39.807 回答