Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php EOT必须在排队的时候吗? if(…){ 如果(…){ echo_Php - Fatal编程技术网

Php EOT必须在排队的时候吗? if(…){ 如果(…){ echo

Php EOT必须在排队的时候吗? if(…){ 如果(…){ echo,php,Php,直接来自PHP: 警告:非常重要的一点是,请注意,该行与关闭 标识符不能包含除分号(;)以外的其他字符。 这特别意味着标识符不能缩进,并且 分号前后可能没有空格或制表符 您可以将其移动到外部文件,如: if(...) { if(...) { echo <<<EOT xxxxx EOT; } } 结果是 Hello World针对PHP 7.3版编辑: 从PHP版本7.3开始,Herdeoc和Nowdoc语法变得

直接来自PHP:

警告:非常重要的一点是,请注意,该行与关闭 标识符不能包含除分号(;)以外的其他字符。 这特别意味着标识符不能缩进,并且 分号前后可能没有空格或制表符


您可以将其移动到外部文件,如:

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…或仅中断PHP
if(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
  }
}