ホームページ  >  記事  >  php教程  >  PHP入门基础(一)标记风格、注释、表单获取、字符串类型、变量解析

PHP入门基础(一)标记风格、注释、表单获取、字符串类型、变量解析

WBOY
WBOYオリジナル
2016-06-13 10:17:58841ブラウズ

PHP标记风格:

<span //</span><span XML风格<br />//推荐的标记风格,可以在XML文档中使用</span>
<?php <span echo</span> '<p>XML Style</p>'; ?>

<span //</span><span 简短风格&mdash;&mdash;需启用short_open_tag选项,遵循SGML(标准通用置标语言)处理说明</span>
<? <span echo</span> '<p>Short Style</p>'; ?>

<span //</span><span Asp风格&mdash;&mdash;需启用asp_tag选项,默认禁用</span>
<% <span echo</span> '<p>Asp Style</p>'; %>

<span //</span><span Script风格&mdash;&mdash;HTML编辑器无法支持其他标记风格时选用</span>
<script language='php;>echo '<p>Script Style</p>';</script>

 

<span //</span><span 多行注释<br /></span>
<span /* </span><span C风格注释
   C风格注释
   C风格注释
</span><span */</span>
<span //单行注释<br /></span>
<span //</span><span C++风格注释</span>
<span #</span><span Shell脚本风格注释<br /></span>
<span /*</span><span 
  在这里特别要注意的是,
  注释符号(#或//)之后,行结束或PHP结束标记(?>)之前,所有内容都是注释。<br />  如下例,"<span Here is HTML</span>"将被当作是HTML,因为他位于关闭标记之外
</span><span */<br /></span>
<span //</span><span Here is a Comment ?> Here is HTML</span>

 

<span //</span><span Short Style&mdash;&mdash;需启用register_globals选项</span>
<span $Name;</span>

<span //</span><span Medium Style&mdash;&mdash;PHP 4.1.0后支持</span>
<span $_POST</span>['Name'<span ];
</span><span $_GET</span>['Name'<span ];

</span><span //</span><span Long Style&mdash;&mdash;通过register_long_arrays禁用</span>
<span $HTTP_POST_VARS</span>['Name'<span ];
</span><span $HTTP_GET_VARS</span>['Name'];<br /><br /><span //</span><span 三种方法的使用讨论<br /><br />/*Short Style<br /> 表单变量会自动转换成全局变量,有可能会遇到破坏脚本安全性的程序错误<br /> 在使用是应对自己的变量赋予一个初始值<br />*/<br /></span>
<span /*Medium Style<br /> 涉及到从$_POST、$_GET或$_REQUEST数组之一检索变量<br /> 这三个数组被称作是超级全局(superglobal)变量<br /> 选用$<span _POST<span <span 或</span></span>$_GET取决于提交表单的方法(POST or GET),但都可通过<span $_REQUEST</span>['Name']获取数据</span><br />*/</span>
<span /*Long Style<br /> 已经过时,禁用后可以改进性能<br />*/</span>

 

<span //</span><span PHP中一个字符串可以通过下面的4种方式来定义:
<br /><span //</span><span 双引号("")</span> <br /><span echo</span> "Character string"<span ;<br /></span>
//单引号('')</span>
<span echo</span> 'Character String'<span ;<br /><br /></span><span //</span><span heredoc结构(PHP4.0后引进) </span>
<span echo</span> <<<<span EOD
    heredoc
  heredoc
heredoc
</span><span EOD;<br /></span><span <br /><span //</span><span heredoc结构(PHP<span 5.3.0</span>后引进) </span><br />echo</span> <<<"<span EOD"
    heredoc
  heredoc
heredoc
</span><span EOD;<br />
</span><span //</span><span nowdoc<span 结构</span>(PHP5.3.0后引进) </span>
<span echo</span> <<<'EOT'<span 
    nowdoc
  nowdoc
nowdoc
</span>EOT;<br /><br /><span /*用法<br /> 1.单引号<br />  要表达一个单引号自身,需在它的前面加个反斜线(<em>\</em>)来转义,要表达一个反斜线自身,则用两个反斜线(<em>\\</em>)。<br />  其它任何方式的反斜线都会被当成反斜线本身,<br />  例如 <em>\r</em> 或者 <em>\n</em>,并不代表任何特殊含义,就单纯是这两个字符本身。<br /> 2.双引号<br />  <span 双引号定义的字符串最重要的特征是变量会被解析</span><br />  字符串是包围在双引号(")中, PHP将对一些特殊的字符进行解析<br /> 3.Heredoc结构<br />  <<<,在该运算符之后要提供一个标识符(<span 命名遵守PHP规则)</span>,然后换行,<br />  接下来是字符串 string 本身,<br />  最后要用前面定义的标识符作为结束标志。<br />  <br /><span */<br /></span><br /><span /*</span>注意事项<br /> 1.双引号与Heredoc结构是插补的[<span 插补(interpolation)特性:用一个字符串的内容来代替一个变量的操作</span>]<br /> 2.<span 双引号</span>与单引号,Heredoc语法与Nowdoc语法之间的区别和效率问题:<br />  由于双引号/Heredoc语法要进行插补操作,其中的字段会经过编译器的解释,然后再当做HTML代码输出;<br />  而单引号/Nowdoc语法内的字段不会进行解释,直接输出。<br /> 3.Heredoc结构/Nowdoc结构结束时所引用的标识符必须在该行的第一列,<br />  结束标识符这行除了可能有一个分号(;)外,绝对不能包含其它字符,<br />  且分号的前后也不能有任何空白或制表符。<br />  *在Heredoc结构中含有复杂的变量时要格外小心<br /> 4.PHP5.3.0后,Heredoc结构<span 也可用</span>来初始化静态变量和类的属性和常量:<br /></span>
<span //</span><span 静态变量</span>
<span function</span><span  foo(){
    </span><span static</span> <span $bar</span> = <<<<span LABEL
Nothing in here</span>...<span 
LABEL;
}

</span><span //</span><span 类的常量、属性</span>
<span class</span><span  foo{
    </span><span const</span> BAR = <<<<span FOOBAR
</span><span Constant</span><span  example
FOOBAR;
    </span><span public</span> <span $baz</span> = <<<<span FOOBAR
Property example
FOOBAR;
}</span>
<span  5.Nowdoc结构可以用在任意的静态数据环境中,最典型的示例是用来初始化类的属性或常量:<br /></span>
<span class</span><span  foo {
  </span><span public</span> <span $bar</span> = <<<'EOT'<span 
bar
EOT;
}</span>
<span */<br /></span>
<span <span <span /*</span></span>附:转义字符<br />  \n     换行(ASCII 字符集中的 LF 或 0x0A (10))<br />  \r     回车(ASCII 字符集中的 CR 或 0x0D (13))<br />  \t     水平制表符(ASCII 字符集中的 HT 或 0x09 (9))<br />  \v     垂直制表符(ASCII 字符集中的 VT 或 0x0B (11))(自 PHP 5.2.5 起)<br />  \e     Escape(ASCII 字符集中的 ESC 或 0x1B (27))(自 PHP 5.4.0 起)<br />  \f     换页(ASCII 字符集中的 FF 或 0x0C (12))(自 PHP 5.2.5 起)<br />  \\     反斜线<br />  \$     美元标记<br />  \"     双引号<br />  \[0-7]{1,3}     符合该正则表达式序列的是一个以八进制方式来表达的字符<br />  \x[0-9A-Fa-f]{1,2}     符合该正则表达式序列的是一个以十六进制方式来表达的字符<br />*/<br /></span>

 

<span //</span><span 当字符串用双引号或 heredoc结构定义时,其中的变量将会被解析。</span>

<span /*</span><span 简单语法:
    当PHP解析器遇到&ldquo;$&rdquo;时,它会组合尽量多的标识以形成一个合法的变量名
</span><span */</span>
<span /*</span><span 复杂语法:
    像在string以外的地方那样写出表达式,
    然后用花括号 { 和 } 把它括起来即可。
    由于 { 无法被转义,只有 $ 紧挨着 { 时才会被识别。可以用 {\$ 来表达 {$。
</span><span */<br /><br />#<span 下次继续</span>变量解析的深入学习</span>

 

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:ACCESS TOKEN次の記事:第六章_PHP数组