0

现在它<?=在 PHP 5.4+ 中始终可用,并且关于它在 PHP6 中被贬值的旧谣言正在消失,使用这个方便的小快捷方式似乎是完全安全的。

我的问题是:正确的语法是什么?

我在 PHP 网站上找不到它的任何示例,而且显然无法<?=在 Google 上搜索。

我的理解是它是 的捷径<?php echo,但这并不意味着你应该写:

<?= $string; ?>

而不是:

<?= $string ?>?

还是因为在初始之后没有更多说明而没有任何区别echo

谢谢。


由多列定义的唯一行

我需要一个表定义,其中仅当 3 列相同时才考虑重复。

Accountid, Reportid,  Date (Y-m-d)
1          2          2014-01-01
1          2          2014-01-02
2          2          2014-01-01
1          2          2014-01-01   //Dupe And not let it insert like a primary key
4

4 回答 4

2

由于<?=一直是简写(在 PHP 5.4 启用/禁用 using 之前short_open_tag),它不会改变语言语义。因此,您可以自由使用<?= "hello" ?>or <?= "hello"; ?>,就像使用任何其他 PHP 单线一样。

这不仅仅是语言结构的风格问题,但无论您选择什么,在整个项目中始终如一地使用它,以简化进一步的维护和可读性。

于 2014-01-29T19:25:51.113 回答
1

根据 PHP 文档,您应该使用:

I have <?=$foo?> foo.

来源:http ://us3.php.net/echo

于 2014-01-29T19:21:56.763 回答
1

当你使用最后一个 ; 是可选的,最后一个也是如此;你的 php 文件

于 2014-01-29T19:22:55.177 回答
1

在执行了一堆简单的测试之后,它似乎并不重要:

<?php echo 'hello' . "\n" ?>
<?php echo 'hello' . "\n"; ?>
<?= 'hello' . "\n" ?>
<?= 'hello' . "\n"; ?>

这些都有相同的输出: http ://codepad.org/zWUUN9Sw

于 2014-01-29T19:23:15.333 回答