Home > Article > Backend Development > PHP beginners learn basic syntax_PHP tutorial
PHP is the abbreviation of the English hypertext preprocessing language Hypertext Preprocessor. PHP is an HTML embedded language. It is a scripting language that is embedded in HTML documents and is executed on the server side. The style of the language is similar to C language and is widely used.
Separated from HTML
When PHP parses a file, it looks for opening and closing tags, which tell PHP to start and stop interpreting the code within it. This method of parsing allows PHP to be embedded in a variety of documents. Anything outside a pair of opening and closing tags will be ignored by the PHP parser. Most of the time PHP is embedded in an HTML document, as shown in the example below.
<ol class="dp-c"> <li class="alt"><span><span><p>This is going to be ignored.</p> </span></span></li> <li><span><?php </span><span class="func">echo</span><span> </span><span class="string">'While this is going to be parsed.'</span><span>; ?> </span></li> <li class="alt"><span><p>This will also be ignored.</p> </span></li> </ol>
You can also use more advanced structures:
Example#1 Advanced Separation Technique
<ol class="dp-c"> <li class="alt"><span><span><?php </span></span></li><li><span class="keyword">if</span><span> (</span><span class="vars">$expression</span><span>) { </span></li><li class="alt"><span>?> </span></span></li> <li><span><strong>This is true.</strong> </span></li> <li class="alt"><span><?php </span></li><li><span>} </span><span class="keyword">else</span><span> { </span></li><li class="alt"><span>?> </span></li> <li><span><strong>This is false.</strong> </span></li> <li class="alt"><span><?php </span></li><li><span>} </span></li><li class="alt"><span>?> </span></li> </ol>
The above example works because when PHP encounters the closing tag ?>, it simply outputs the content after it as it is until it encounters the next opening tag. Of course, the above example is contrived, but for outputting large chunks of text, it's often more efficient to break out of PHP parsing mode than to echo() or print() everything.
There are four different pairs of opening and closing tags you can use in PHP. Two of them,
<ol class="dp-c"><li class="alt"><span><span><?php ?> </span></span></li></ol>
and
<ol class="dp-c"><li class="alt"><span><span><script language=</span><span class="string">"php"</span><span>> </script> </span></span></li></ol>
are always available. The other two are short tags and ASP style tags, which can be turned on or off in the php.ini configuration file. Although some people find short tags and ASP-style tags convenient, they are less portable and generally not recommended.
Note: Also note that if you embed PHP into XML or XHTML you need to use to stay compliant.
Example#2 PHP start and end tags
<ol class="dp-c"> <li class="alt"><span><span><?php </span><span class="func">echo</span><span> </span><span class="string">'if you want to serve XHTML or XML documents, do like this'</span><span>; ?> </span></span></li> <li><span><script language=</span><span class="string">"php"</span><span>> </span></li> <li class="alt"> <span class="func">echo</span><span> </span><span class="string">'some editors (like FrontPage) don'</span><span>t </span> </li> <li><span>like processing instructions'; </span></li> <li class="alt"><span></script> </span></li> <li><span><? </span><span class="func">echo</span><span> </span><span class="string">'this is the simplest, an SGML processing instruction'</span><span>; ?> </span></li> <li class="alt"> <span><?= expression ?> This is a shortcut </span><span class="keyword">for</span><span> </span><span class="string">"<? echo expression ?>"</span><span> </span> </li> <li><span><% </span><span class="func">echo</span><span> </span><span class="string">'You may optionally use ASP-style tags'</span><span>; %> </span></li> <li class="alt"><span><%= </span><span class="vars">$variable</span><span>; # This is a shortcut </span><span class="keyword">for</span><span> </span><span class="string">"<% echo . . ."</span><span> %> </span></li> </ol>
1 and 2 in the above example are always Available, 1 is the most commonly used and recommended.
Short tags (Example 3 above) are only available if turned on via the short_open_tag directive in the php.ini configuration file, or when PHP was compiled with the --enable-short-tags option.
Note: If you use PHP 3, you can also activate the use of short tags through the short_tags() function. This method only works with PHP 3!
ASP style tags (Example 4 above) are only available if turned on via the asp_tags directive in the php.ini configuration file.
Note: Support for ASP style markup was added in version 3.0.4.
Note: Avoid using short tags in the following situations: developing programs or libraries that need to be distributed, or developing on servers that are not controlled by the user. Because the target server may not support short tags. For code portability and distribution, make sure not to use short tags.
Instruction Separator
Like C or Perl, PHP requires a semicolon to end instructions after each statement. The closing tag in a PHP code section implicitly represents a semicolon; the last line in a PHP code section may not end with a semicolon. If a newline follows, the end of the line is included in the snippet's closing tag.
<ol class="dp-c"> <li class="alt"><span><span><?php </span></span></li><li><span class="func">echo</span><span> </span><span class="string">"This is a test"</span><span>; </span></li><li class="alt"><span>?> </span></span></li> <li><span><?php </span><span class="func">echo</span><span> </span><span class="string">"This is a test"</span><span> ?> </span></li> <li class="alt"><span><?php </span><span class="func">echo</span><span> </span><span class="string">'We omitted the last closing tag'</span><span>; </span></li></ol>
Note: The PHP code segment end tag at the end of the file is not required. In some cases, it is better to omit it when using include() or require(). This is not expected. The white spaces will not appear at the end of the file, and response headers can still be output later. It's also convenient when using output buffering, so you don't see the unwanted white spaces generated by include files.
Comments
PHP supports C, C++ and Unix Shell style (Perl style) comments. For example:
<ol class="dp-c"><li class="alt"><span><span><?php </span></span></li><li><span class="func">echo</span><span> </span><span class="string">"This is a test"</span><span>; </span><span class="comment">// This is a one-line c++ style comment </span><span> </span></li><li class="alt"><span class="comment">/* This is a multi line comment </span> </li><li><span><span class="comment">yet another line of comment */</span><span> </span></span></li><li class="alt"><span class="func">echo</span><span> </span><span class="string">"This is yet another test"</span><span>; </span></li><li><span class="func">echo</span><span> </span><span class="string">'One Final Test'</span><span>; # This is a one-line shell-style comment </span></li><li class="alt"><span>?> </span></li> </ol>
A single-line comment only comments to the end of the line or to the current PHP code block, whichever comes first. This means that the HTML code after // ... ?> or # ... ?> will be displayed: ?> jumps out of PHP mode and returns to HTML mode, // or # has no effect at this point. If the asp_tags configuration option is enabled, the behavior is the same as // %> or # %>. However, the tag does not break out of PHP mode within a single-line comment.
<ol class="dp-c"> <li class="alt"><span><span><h1>This is an <?php # </span><span class="func">echo</span><span> </span><span class="string">"simple"</span><span>;?> example.</h1> </span></span></li> <li> <span><p>The header above will say </span><span class="string">'This is an example'</span><span>. </span> </li> </ol>
Copy code C-style comments end when the first */ is encountered. Be sure not to nest C-style comments. This error can easily occur when trying to comment out a large chunk of code.
<ol class="dp-c"><li class="alt"><span><span><?php </span></span></li><li><span class="comment">/* </span> </li><li class="alt"><span><span class="comment">echo "This is a test"; /* This comment will cause a problem */</span><span> </span></span></li><li><span>*/ </span></li><li class="alt"><span>?> </span></span></li></ol>
I hope the above introduction can help you.