Why to use delimiters: because PHP is a web programming language, in the programming process will inevitably encounter with Echo to output a large segment of HTML and JavaScript script, if the traditional output method-by string output, There must be a large number of escapes to escape special characters such as quotes in a string to avoid syntax errors. If it is one or two can be tolerated, but if a full HTML text or a 200-line JS I think who will collapse. That's why PHP introduces a delimiter--at least for a large part of the reason.
The function of the 1.PHP delimiter is to follow the original, including the newline format, and output something inside it;
2. Any special characters in the PHP delimiter do not need to be escaped;
The PHP variable in the 3.PHP delimiter is replaced with its value as normal.
The delimiter format in PHP is this:
The
code is as follows:
<<<eof
......
Eof;
It looks simple, but there are many places to be aware of.
The character EOF after <<< is defined by itself, whatever is possible (such as AAA), but the character at the end must be the same as him, they appear in pairs, like {}-this is the most basic.
In the process of using PHP delimiters, the second issue to be aware of--and the most frequently problematic place:
The end of the line (as in the above example, EOF;), must be a different row, and the row except EOF, the delimiter end of the logo can not have any other characters, before and after cannot have, including spaces. If there are spaces or tabs at the front or last of the bank, you will receive an error message like this:
Parse error:parse error, unexpected $end in ..., prompting you for grammatical errors;
The third thing to note is that if there is a PHP variable in the middle of the delimiter, you just have to write it as if it were output in another string, such as
The code is as follows:
<<<eof
hello{$name}
Eof;
Variable $name to use {} to tell the PHP parser that this is a PHP variable, in fact, it is not possible, but it may be ambiguous, such as your variable is not just a letter or a special symbol what will happen? There's no way to do that.
The code is as follows:
<<<eof
hello<?php Echo $name?>
Eof;
In this case, you will also receive a syntax error message. The first is the correct notation for a field-tested PHP delimiter. It contains the code for HTML and javascript:
The code is as follows:
<?php
$name = ' Kitty ';
Echo <<<eof
<table height= ">"
<tr><td>
{$name}<br/>
<script>
var p= ' Hello World ';
Document.writeln (P);
</script>
</td></tr>
</table>
Eof;
?>
PHP Delimiter Usage Tips