2014-01-29 237 views
0

现在<?=总是可用于PHP 5.4+,并且它在PHP6中折旧的旧传言正在消失,似乎使用这个方便的小捷径完全安全。如何正确使用PHP'<?='标签

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

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

我的理解是,它是<?php echo一个快捷方式,但并不意味着你应该写:

<?= $string; ?>

不是:

<?= $string ?>

或者它没有任何区别,因为在初始echo之后没有更多说明?

谢谢。

+0

记录:http://us2.php.net/echo(google ** php“<?=”快捷键**) –

回答

1

按照PHP文档,你应该使用:

I have <?=$foo?> foo. 

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

+0

另外,通过谷歌搜索,你可以尝试“php短打开标签” – tkeeler

+1

根据任何人谁将不得不维护你的代码,你应该做''为了可读性和一致性 –

+0

@KaiQing为什么会这样呢?在简写回声的情况下,它不会改善结构的可读性和_grepability_。我一直被认为是一种_code美容纳粹,但这一个并不适合我。 –

1

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

1

进行了一堆简单的测试后,看来,它并不真正的问题:

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

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

2

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

这是一个风格比语言构造更重要的问题,但无论您选择什么,在整个项目中始终如一地使用它来减轻维护和可读性。