PHP Delimiter Usage Tips

Source: Internet
Author: User
Tags parse error

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

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.