Php EOT必须在排队的时候吗? if(…){ 如果(…){ echo
直接来自PHP: 警告:非常重要的一点是,请注意,该行与关闭 标识符不能包含除分号(;)以外的其他字符。 这特别意味着标识符不能缩进,并且 分号前后可能没有空格或制表符Php EOT必须在排队的时候吗? if(…){ 如果(…){ echo,php,Php,直接来自PHP: 警告:非常重要的一点是,请注意,该行与关闭 标识符不能包含除分号(;)以外的其他字符。 这特别意味着标识符不能缩进,并且 分号前后可能没有空格或制表符 您可以将其移动到外部文件,如: if(...) { if(...) { echo <<<EOT xxxxx EOT; } } 结果是 Hello World针对PHP 7.3版编辑: 从PHP版本7.3开始,Herdeoc和Nowdoc语法变得
您可以将其移动到外部文件,如:
if(...) {
if(...) {
echo <<<EOT
xxxxx
EOT;
}
}
结果是
Hello World针对PHP 7.3版编辑:
从PHP版本7.3开始,Herdeoc和Nowdoc语法变得灵活,因此OP中的代码现在仍然有效。结束语句的缩进决定了从字符串中去掉多少空格
官方发布声明及更多信息:
原始答案对PHP版本有效它被称为HEREDOC语法,是的,标识符必须在行的开头:@CD001好的……但是有没有其他方法可以在PHP中编写块字符串,而不会破坏HEREDOC的代码结构?这真的很不令人满意……为什么不直接访问我在PHP strin中添加的链接呢g类型?为您提供了所有可能的选项。@Lixin Wei将其与
include
一起使用,并在外部文件中:return…或仅中断PHPif(something):?>…此处的内容。。。
if(...) {
if(...) {
echo <<<EOT
xxxxx
EOT;
}
}
return <<<"EOF"
Hello $var
EOF;
if(...) {
if(...) {
$var = 'World';
print include 'file.php';
}
}
if( true ) {
if( true ) {
// Single quoted
$single = 'some
text';
echo $single; // some text
// Double quoted
$double = "some
text";
echo $double; // some text
// Custom function
function block($s) {
return preg_replace('/\s*\n\s*/', '<br/>', $s);
}
echo block("some
text"); // some<br/>text
// In a browser this is shown as:
// some
// text
}
}