问题标签 [php-shorttags]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
9200 浏览

php - PHP 速记标签 7.x

只是想知道,我有一个 codeigniter 项目,我被要求做一些工作。我也在尝试(在我可以的地方)准备项目以升级到 php 7.x(目前在 5)。

我感到困惑的一件事是使用 php 短标签。我爱他们,但似乎他们在 7 中被删除?

所以我的问题是,我应该删除它们吗?问题是,他们使代码更具可读性,为什么要删除它?

例如:

对比

我更喜欢第二个版本,但是每当我在 php7 上运行我的项目时,这些都不起作用。我错过了什么还是他们真的被删除了?

仅供参考:我在 php.ini 中有短标签

0 投票
2 回答
49 浏览

php - 短回显标签是否仅在 PHP 代码嵌入 HTML 代码时使用?

我尝试使用短回显标签,即<?= ?>在我的 PHP 文件中显示一个字符串,该文件中已经有 PHP 代码存在于<?php ?>标签中。所以,我尝试在我的代码中使用短回显标记并得到解析错误。

见下面的代码:

我得到以下输出:

所以,我的问题是:短回显标签是否仅在 PHP 代码要嵌入 HTML 代码并且不在现有的 php 标签对中时使用?

我可以在仅包含纯 PHP 代码的文件中使用吗?

0 投票
2 回答
1060 浏览

php - 如何在 Alpine Linux 的 Php7 中启用短标签?

我已经知道一般修复;将设置“short_open_tag=On”放在 php.ini 中,然后重新启动您正在使用的任何服务器,但是对于 Alpine Linux,情况要复杂一些。

您通过该命令安装的 php7 软件包似乎apk add php7带有嵌入到 php 可执行文件中的预配置“配置命令”,并且指定的配置选项之一是'--disable-short-tags'. 为了演示,这是php -i创建一个简单的 docker 容器后的输出:

这是 Dockerfile:

根据我在线阅读的内容,您无法覆盖这些配置,并且配置文件将被忽略。关于我应该做些什么来解决这个问题的任何想法?

0 投票
1 回答
359 浏览

php - PHP 8 没有显示 short_open_tag 设置

以下返回零长度的字符串:

在两台 PHP 8 服务器(apache2handler 和 cgi-fcgi)上,我需要知道是否启用了短标签,因为它会与 XML 产生冲突。我不能停止我正在做的一切去看phpinfo()

此代码在两台服务器上的 PHP 7.4 中运行良好。现在,我确实知道短标签被禁用,但我需要能够在服务器升级后快速知道。

我如何ini_get('short_open_tag')重新开始工作?