mirror of
https://github.com/sigmasternchen/php-doc-en
synced 2025-03-16 00:48:54 +00:00
Major prose fixups, some XML cleanups, and a couple of typo fixes.
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@63248 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
parent
dd84f659f8
commit
a93fc8b46f
1 changed files with 110 additions and 84 deletions
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision: 1.20 $ -->
|
||||
<chapter id="language.basic-syntax">
|
||||
<title>Basic syntax</title>
|
||||
<!-- $Revision: 1.21 $ -->
|
||||
<chapter id="language.basic-syntax">
|
||||
<title>Basic syntax</title>
|
||||
|
||||
<!--
|
||||
|
||||
|
@ -46,20 +46,35 @@
|
|||
oop : has been revised by Kristian, DONE.
|
||||
-->
|
||||
|
||||
<sect1 id="language.basic-syntax.phpmode">
|
||||
<title>Escaping from HTML</title>
|
||||
<sect1 id="language.basic-syntax.phpmode">
|
||||
<title>Escaping from HTML</title>
|
||||
|
||||
<para>
|
||||
When PHP starts to handle file, it will just output the text
|
||||
it encounters. So if you have a HTML-file, and you change its
|
||||
extension to .php, your file will keep working.
|
||||
</para>
|
||||
<para>
|
||||
When PHP parses a file, it simply passes the text of the file
|
||||
through until it encounters one of the special tags which tell it
|
||||
to start interpreting the text as PHP code. The parser then
|
||||
executes all the code it finds, up until it runs into a PHP
|
||||
closing tag, which tells the parser to just start passing the text
|
||||
through again. This is the mechanism which allows you to embed PHP
|
||||
code inside HTML: everything outside the PHP tags is left utterly
|
||||
alone, while everything inside is parsed as code.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you want to insert php-statements at some point in your
|
||||
file, you'll need to indicate so to php, by entering "PHP mode"
|
||||
in either of the following ways:
|
||||
</para>
|
||||
<para>
|
||||
There are four sets of tags which can be used to denote blocks of
|
||||
PHP code. Of these, only two (<?php. . .?> and <script
|
||||
language="php">. . .</script>) are always available; the
|
||||
others can be turned on or off from the
|
||||
<filename>php.ini</filename> configuration file. While the
|
||||
short-form tags and ASP-style tags may be convenient, they are not
|
||||
as portable as the longer versions. Also, if you intend to embed
|
||||
PHP code in XML or XHTML, you will need to use the
|
||||
<?php. . .?> form to conform to the XML.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The tags supported by PHP are:
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<example>
|
||||
|
@ -83,75 +98,80 @@
|
|||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The first way is only available if short tags have been
|
||||
enabled. This can be done
|
||||
<!-- via the <function>short_tags</function> function,-->
|
||||
by enabling the <link linkend="ini.short-open-tag">short_open_tag</link>
|
||||
configuration setting in the PHP config file, or by compiling PHP with the
|
||||
--enable-short-tags option to <command>configure</command>.
|
||||
</para>
|
||||
<para>
|
||||
The first way is only available if short tags have been
|
||||
enabled. This can be done via the <function>short_tags</function>
|
||||
function (PHP 3 only), by enabling the <link
|
||||
linkend="ini.short-open-tag">short_open_tag</link> configuration
|
||||
setting in the PHP config file, or by compiling PHP with the
|
||||
--enable-short-tags option to <command>configure</command>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The second way is the generally preferred method, as it allows for the
|
||||
next generation of XHTML to be easily implemented with PHP.
|
||||
</para>
|
||||
<para>
|
||||
Again, the second way is the generally preferred method, as it
|
||||
allows for the the use of PHP in XML-conformant code such as
|
||||
XHTML.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The fourth way is only available if ASP-style tags have been
|
||||
enabled using the <link linkend="ini.asp-tags">asp_tags</link>
|
||||
configuration setting.
|
||||
<para>
|
||||
The fourth way is only available if ASP-style tags have been
|
||||
enabled using the <link linkend="ini.asp-tags">asp_tags</link>
|
||||
configuration setting.
|
||||
|
||||
<note>
|
||||
<para>Support for ASP-style tags was added in 3.0.4.</para>
|
||||
</note></para>
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The closing tag for the block will include the immediately
|
||||
trailing newline if one is present.
|
||||
</para>
|
||||
<para>
|
||||
The closing tag for the block will include the immediately
|
||||
trailing newline if one is present. Also, the closing tag
|
||||
automatically implies a semicolon; you do not need to have a
|
||||
semicolon terminating the last line of a PHP block.
|
||||
</para>
|
||||
|
||||
<para> <!-- TODO: find a better place for this para -->
|
||||
PHP allows you to use structures like this:
|
||||
<example><title>Advanced escaping</title>
|
||||
<para>
|
||||
PHP allows you to use structures like this:
|
||||
<example><title>Advanced escaping</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
if (boolean-expression) {
|
||||
?>
|
||||
<strong>This is true.</strong>
|
||||
<?php
|
||||
} else {
|
||||
>
|
||||
?>
|
||||
<strong>This is false.</strong>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
This works as expected, because PHP handles text within ?> and
|
||||
<?php as an <function>echo</function> statement.
|
||||
<!-- without the parsing if vars, that is (hopefully?) obvious -->
|
||||
</para>
|
||||
</example>
|
||||
This works as expected, because when PHP hits the > closing
|
||||
tags, it simply starts outputting whatever it finds until it hits
|
||||
another opening tag. The example given here is contrived, of
|
||||
course, but for outputting large blocks of text, dropping out of
|
||||
PHP parsing mode is generally more efficient than sending all of
|
||||
the text through <function>echo</function> or
|
||||
<function>print</function> or somesuch.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="language.basic-syntax.instruction-separation">
|
||||
<title>Instruction separation</title>
|
||||
|
||||
<simpara>
|
||||
Instructions are separated the same as in C or Perl - terminate
|
||||
each statement with a semicolon.</simpara>
|
||||
|
||||
</sect1>
|
||||
<para>
|
||||
The closing tag (?>) also implies the end of the statement, so
|
||||
the following are equivalent:
|
||||
|
||||
<sect1 id="language.basic-syntax.instruction-separation">
|
||||
<title>Instruction separation</title>
|
||||
|
||||
<simpara>
|
||||
Instructions are separated the same as in C or Perl - terminate
|
||||
each statement with a semicolon.</simpara>
|
||||
|
||||
<para>
|
||||
The closing tag (?>) also implies the end of the statement, so the
|
||||
following are equivalent:
|
||||
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
echo "This is a test";
|
||||
|
@ -159,17 +179,19 @@ if (boolean-expression) {
|
|||
|
||||
<?php echo "This is a test" ?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample></para></sect1>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="language.basic-syntax.comments">
|
||||
<title>Comments</title>
|
||||
<sect1 id="language.basic-syntax.comments">
|
||||
<title>Comments</title>
|
||||
|
||||
<para>
|
||||
PHP supports 'C', 'C++' and Unix shell-style comments. For example:
|
||||
<para>
|
||||
PHP supports 'C', 'C++' and Unix shell-style comments. For example:
|
||||
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
echo "This is a test"; // This is a one-line c++ style comment
|
||||
|
@ -180,27 +202,30 @@ if (boolean-expression) {
|
|||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample></para>
|
||||
</informalexample>
|
||||
</para>
|
||||
|
||||
<simpara>
|
||||
The "one-line" comment styles actually only comment to the
|
||||
end of the line or the current block of PHP code, whichever
|
||||
comes first.</simpara>
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<simpara>
|
||||
The "one-line" comment styles actually only comment to the end of
|
||||
the line or the current block of PHP code, whichever comes
|
||||
first.
|
||||
</simpara>
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<h1>This is an <?php # echo "simple";?> example.>/h1>
|
||||
<p>The header above will say 'This is an example'.
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
|
||||
<simpara>
|
||||
You should be careful not to nest 'C' style comments, which can
|
||||
happen when commenting out large blocks.</simpara>
|
||||
<simpara>
|
||||
You should be careful not to nest 'C' style comments, which can
|
||||
happen when commenting out large blocks.
|
||||
</simpara>
|
||||
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
/*
|
||||
|
@ -209,8 +234,9 @@ if (boolean-expression) {
|
|||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample></sect1>
|
||||
</chapter>
|
||||
</informalexample>
|
||||
</sect1>
|
||||
</chapter>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
|
|
Loading…
Reference in a new issue