In order to let everyone fully understand EOF in php, this time we start a new chapter. Friends who need it can come and take a look.
In PHP, there is a way to define strings, which is heredoc; it can be used in command line shells (such as sh, csh, ksh, bash, PowerShell and zsh) and programming languages (such as Perl , PHP, Python and Ruby) to define.
First let’s look at a little chestnut.
<?php $name="runoob"; $a= <<<EOF "abc"$name "123" EOF; // 结束需要独立一行且前后不能空格 echo $a; ?>
When we look at this code, it seems that the code after "$a=
" is very strange. It actually uses "<<<
". And it also has two identical EOF words. What are these? What's the point?
In PHP, if we want to define a string in a command line shell or in a programming language, we have a specific format, which is.<<<EOF
It starts with the opening tag and ends with the EOF
end tag.
We have learned about heredoc, so let’s take a look at how to use heredoc.
1. There must be a semicolon after the EOF end mark, otherwise the compilation will not pass.
2. As long as the end tag is consistent with the start tag, the start tag and end tag can be replaced by any other characters.
3. The closing tag must occupy one line in the top grid (it must start from the beginning of the line and cannot be followed by any spaces or characters).
4. The start identifier can have no quotation marks, or it can have single quotation marks and double quotation marks. The effect without quotes is the same as with double quotes. Interpret embedded variables and escape symbols. For single quotes, embedded variables and escape symbols are not interpreted.
5. When the content requires embedded quotes (single quotes or double quotes), there is no need to add escape characters. The content itself avoids single quotes and double quotes, which is equivalent to the usage of Q and QQ.
After knowing so many ways to use heredoc, let's take a look at the precautions to avoid the code we write becoming unusable or other problems.
1. Start with <<<EOF start tag and end with EOF end tag. The closing tag must be written at the beginning, without indentation or spaces, and there must be a semicolon at the end of the closing tag.
2. The start tag is the same as the end tag, such as uppercase EOT, EOD and EOF, but not limited to those (JSON, HTML, etc.), as long as the start tag and end tag do not appear in the body.
3. The variables between the start tag and the end tag can be parsed normally, but the function cannot. In heredoc, variables do not need to be connected with the connector .
or ,
, just like ""abc"$name## in our example above #"Same.
The above is the detailed content of What is a heredoc? What can it do for PHP?. For more information, please follow other related articles on the PHP Chinese website!