一尘不染

为什么从PHP 5.4开始永久启用“ echo”短标签?

php

甚至用于告诉我们[PHP的“短标签”(<? /*...*/?>)都是“坏”的官方文档。但是,[自PHP 5.4起,无论设置为何,该echo品种<?= /*...*/?>都将永久启用short_open_tag

有什么变化?

即使以前只是由于是否short_open_tag在共享托管平台上启用它的不可预测性而阻止了它们,但是肯定不会因为某些主机子集将运行PHP5.4而争论不休?

可以说,对语言的这种更改并不是从本质上表示建议中的更改,即尽管如此,我们仍应避免使用“短标签”,但是如果它们遇到了麻烦,PHP开发人员肯定不会再“讨厌”它们了,因此许多。对?

我目前可以得出的唯一合乎逻辑的结论是,PHP 5.4中引入此更改必须有一些客观的理由。

它是什么?


阅读 323

收藏
2020-05-26

共1个答案

一尘不染

*自PHP 5.4起, *短时打开标记 并不总是启用。该文档讨论了 简短的echo标签
。这是另一回事。(短打开标签是<?样式标签,短回声标签是<?=样式标签,用于回显)。

那么为什么现在默认情况下启用它们?好的,那里有很多脚本,使用<?= $somevar ?>代替会有所帮助<?php echo$somevar?>。而且由于短回声标签不如短开放标签那么糟糕,因此他们选择始终启用短回声标签。因为现在(框架和CMS-es的)开发人员可以依靠它们(或者,当PHP 5.4成为主流时)。

但是,短 打开 标记仍受short_open_tagphp.ini中的设置影响。

2020-05-26