<?php vs <? …Does it matter? [duplicate]

2019-08-21 09:11发布

可能重复:
PHP是短标签符合使用要求?

<?php
    //Some code
?>

要么

<?
    //Some code
?>

我所知道的第一种方式是正确的方式,但PHP代码进行验证。 因此,除了它节省了额外的打字和字节,这很重要?

更新感谢您的答复...

  1. 我不知道他们被称为短标签 (所以为什么我没有找到重复的SO问题)
  2. 我不知道有一个特定的服务器配置选项允许/禁止的短标签。

再次感谢

Answer 1:

确实,如果没有人在那里短标签被禁止在服务器上使用您的代码。 我有几台服务器,他们是工作。 除此之外,虽然,没有。 使用短版使您的脚本的可移植性尽管对于上述原因。 这可能会或可能不会是一个问题。

这完全是另外一个问题,但相关的。 如果你正试图从PHP生成某些类型的文件(XML是最经常出现我的候选人),则有短标签可以是一个问题。 例如,下面的会导致PHP语法错误:

<?xml version="1.0" ?>

相反,您必须编写启用了短标签的服务器上执行以下操作:

<?php echo '<?xml version "1.0" ?>'; ?>

尔加!



Answer 2:

如果你的项目很可能被部署在不同的服务器(开源软件,例如)最好是始终使用<?php

但是,如果你和我一样,始终追求最大的可移植性,使用<?php ,即使你不相信你的软件永远不会离开你的服务器。 大多数服务器启用了短标签。

但是,如果他们有短标签禁用,并使用它们,你的PHP将暴露给世界(如果在文档根目录)。



Answer 3:

没有区别,它只是一个偏好我想之事,再加上它为什么重要? 它只是一个3个字节。

编辑:

忘了说,您必须启用php.ini的手短



Answer 4:

右括号并非强制性



Answer 5:

在某些系统中,为默认选项项short_open_tags是关闭的,因此后者不能正常工作,而前者呢,所以如果你使用第二个它可以彻底打破你的网站。 就个人而言,我只是想覆盖该设置并使用第二。



Answer 6:

<? ?>

很短的标签,如果短标签是关闭它不会工作。



文章来源: