我正在阅读PHP手册。
我在手册&#34中遇到了以下句子:还有一个短回声标记,它始终在PHP 5.4.0及更高版本中提供"。
我不明白这是什么意思?
我尝试使用所谓的短回显标记执行以下代码,因为手册说它始终可用于 PHP 5.4.0及更高版本。我使用 PHP 7.1.10 。
<!DOCTYPE HTML>
<html>
<head>
<title>Example</title>
</head>
<body>
<p>This is going to be ignored by PHP and displayed by the browser.</p>
<?= echo 'While this is going to be parsed.'; ?>
<p>This will also be ignored by PHP and displayed by the browser.</p>
</body>
</html>
我收到以下错误:
Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\xampp\htdocs\php_playground\hello.php on line 9
如果它始终可用,那么为什么我会收到此错误?
关于这个简短的回音标签<?= ?>
<?= ?>
究竟是什么?<?php ?>
代码相比有什么优势?<?php ?>
标记,因此有什么必要?感谢。
答案 0 :(得分:7)
如果它始终可用,那么为什么我会收到此错误?
因为您在echo
之后添加了<?=
语句。你应该把你想要回应的表达式。
错误表示“意外回声”,它与短标签没有直接关系。
短回声标记
<?= ?>
究竟是什么?
回复内容的标记。
它是如何运作的?
它回应你放入其中的任何表达
与
<?php ?>
代码相比,它有什么优势?
更短
由于已经存在
<?php ?>
标记,它有什么必要?
没有必要。这很方便。编程语言可以让程序员更轻松地生活。如果它们只包含必要的东西,那么我们都将使用汇编语言进行编程。
答案 1 :(得分:2)
为什么?
为什么要为Dr.
撰写doctor
。只是为了让它更小。同样,<?= ... ?>
与<?php echo ... ?>
相同,但只是更小更整洁的形式。
主要优势是可读性。它使代码更容易阅读。
并修复错误:
使用短回声标记
时无需使用echo
<?= 'While this is going to be parsed.' ?>
不
<?= echo 'While this is going to be parsed.'; ?>
<强>更新强>
答案 2 :(得分:0)
<?=
优于<?php echo
的优势在于它使您的代码更具可读性的大小差异。因此好一点。
例如,假设您有变量$hello
,您只想打印它,您可以使用:
<?=$hello;?>
OR
<?php echo $hello; ?>
OR
<?php print_r($hello); ?>
甚至
<?php var_dump($hello); ?>
现在,您告诉我,哪一个更容易阅读,并且更容易适合清晰的代码?只需要编写的代码就少了。
答案 3 :(得分:0)
首先
<?= ?>
是<?php echo ?>
所以这将是<?= 'While this is going to be parsed.'; ?>
请注意,如果你想使用那个简短的手,你必须通知你的php.ini
short_open_tag = On
这种速记主要用于模板或快速写作。例如:
如果您撰写<h1><?php echo $title; ?></h1>
, <h1><?= $title; ?></h1>
会更容易
答案 4 :(得分:-2)
为了使<?=
短标记起作用,您需要在配置上编辑php.ini文件,以便它可以正常工作
<?=
等于<?php
echo
因此,这比输入echo更简单,但不要使用这种编码方式,因为员工很难理解。