PHP标记风格:

//XML风格
//推荐的标记风格,可以在XML文档中使用
<?php echo '<p>XML Style</p>'; ?> //简短风格——需启用short_open_tag选项,遵循SGML(标准通用置标语言)处理说明
<? echo '<p>Short Style</p>'; ?> //Asp风格——需启用asp_tag选项,默认禁用
<% echo '<p>Asp Style</p>'; %> //Script风格——HTML编辑器无法支持其他标记风格时选用
<script language='php;>echo '<p>Script Style</p>';</script>

PHP注释:

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

表单获取:

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

字符串类型

//PHP中一个字符串可以通过下面的4种方式来定义:

//双引号("")
echo "Character string";
//单引号('')
echo 'Character String'; //heredoc结构(PHP4.0后引进)
echo <<<EOD
heredoc
heredoc
heredoc
EOD; //heredoc结构(PHP5.3.0后引进)
echo <<<"EOD"
heredoc
heredoc
heredoc
EOD;
//nowdoc结构(PHP5.3.0后引进)
echo <<<'EOT'
nowdoc
nowdoc
nowdoc
EOT; /*用法
 1.单引号
  要表达一个单引号自身,需在它的前面加个反斜线(\)来转义,要表达一个反斜线自身,则用两个反斜线(\\)。
  其它任何方式的反斜线都会被当成反斜线本身,
  例如 \r 或者 \n,并不代表任何特殊含义,就单纯是这两个字符本身。
 2.双引号
  双引号定义的字符串最重要的特征是变量会被解析
  字符串是包围在双引号(")中, PHP将对一些特殊的字符进行解析
 3.Heredoc结构
  <<<,在该运算符之后要提供一个标识符(命名遵守PHP规则),然后换行,
  接下来是字符串 string 本身,
  最后要用前面定义的标识符作为结束标志。
  
*/ /*注意事项
 1.双引号与Heredoc结构是插补的[插补(interpolation)特性:用一个字符串的内容来代替一个变量的操作]
 2.双引号与单引号,Heredoc语法与Nowdoc语法之间的区别和效率问题:
  由于双引号/Heredoc语法要进行插补操作,其中的字段会经过编译器的解释,然后再当做HTML代码输出;
  而单引号/Nowdoc语法内的字段不会进行解释,直接输出。
 3.Heredoc结构/Nowdoc结构结束时所引用的标识符必须在该行的第一列,
  结束标识符这行除了可能有一个分号(;)外,绝对不能包含其它字符,
  且分号的前后也不能有任何空白或制表符。
  *在Heredoc结构中含有复杂的变量时要格外小心
 4.PHP5.3.0后,Heredoc结构也可用来初始化静态变量和类的属性和常量:
//静态变量
function foo(){
static $bar = <<<LABEL
Nothing in here...
LABEL;
} //类的常量、属性
class foo{
const BAR = <<<FOOBAR
Constant example
FOOBAR;
public $baz = <<<FOOBAR
Property example
FOOBAR;
}
 5.Nowdoc结构可以用在任意的静态数据环境中,最典型的示例是用来初始化类的属性或常量:
class foo {
public $bar = <<<'EOT'
bar
EOT;
}
*/
/*附:转义字符
  \n     换行(ASCII 字符集中的 LF 或 0x0A (10))
  \r     回车(ASCII 字符集中的 CR 或 0x0D (13))
  \t     水平制表符(ASCII 字符集中的 HT 或 0x09 (9))
  \v     垂直制表符(ASCII 字符集中的 VT 或 0x0B (11))(自 PHP 5.2.5 起)
  \e     Escape(ASCII 字符集中的 ESC 或 0x1B (27))(自 PHP 5.4.0 起)
  \f     换页(ASCII 字符集中的 FF 或 0x0C (12))(自 PHP 5.2.5 起)
  \\     反斜线
  \$     美元标记
  \"     双引号
  \[0-7]{1,3}     符合该正则表达式序列的是一个以八进制方式来表达的字符
  \x[0-9A-Fa-f]{1,2}     符合该正则表达式序列的是一个以十六进制方式来表达的字符
*/

变量解析

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

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

...The End...

PHP入门基础(一)——标记风格、注释、表单获取、字符串类型、变量解析的更多相关文章

  1. Python学习入门基础教程(learning Python)--2.2.1 Python下的变量解析

    前文提及过变量代表内存里的某个数据,这个说法有根据么? 这里我们介绍一个python内建(built-in)函数id.我们先看看id函数的帮助文档吧.在python查某个函数的帮助文档很简单,只用he ...

  2. PHP语言基础(标记、注释、变量、数组、常量、函数)

    PHP标记风格 1.xml风格(标准风格推荐使用) 代码如下: <?php  echo"这是xml风格的标记";  ?>  xml风格的标记是常用的标记,也是推荐使用的 ...

  3. SpringMVC.入门篇《二》form表单

    SpringMVC.入门篇<二>form表单 项目工程结构: 在<springmvc入门篇一.HelloWorld>基础上继续添加代码,新增:FormController.ja ...

  4. 一款简易的CSS3扁平化风格联系表单

    CSS3扁平化风格联系表单是一款CSS3简易联系表单非常清新,整体外观不是那么华丽,但是表单扁平化的风格让人看了非常舒服,同时利用了HTML5元素的特性,表单的验证功能变得也相当简单.经测试效果相当不 ...

  5. 微信小程序-form表单-获取用户输入文本框的值

    微信小程序-form表单-获取用户输入文本框的值 <input name='formnickname' class="textarea" placeholder=" ...

  6. form表单 获取与赋值

    form表单中使用频繁的组件: 文本框.单选框.多选框.下拉框.文本域form通过getValues()获取表单中所有name的值 通过setValues({key:values})给对应的name值 ...

  7. JavaWeb后台从input表单获取文本值的两种方式

    JavaWeb后台从input表单获取文本值的两种方式 #### index.html <!DOCTYPE html> <html lang="en"> & ...

  8. WEB学习-基础知识:列表、表单、div和span、注释、字符实体、HTML废弃标签介绍

    列表 无序列表 无序列表,用来表示一个列表的语义,并且每个项目和每个项目之间,是不分先后的. ul就是英语unordered list,“无序列表”的意思. li 就是英语list item , “列 ...

  9. Bootstrap框架(基础篇)之列表,表格,表单

    继续上篇的基础部分延伸,主要说一下列表,表格,表单相关Bootstrap框架变化以及基础知识. 1.列表篇 除了HTML提供的三种基本列表样式: 无序列表 <ul> <li>… ...

随机推荐

  1. Java中的大数处理类BigInteger和BigDecimar浅析

    这两个类位于java.math包内,要使用它们必须在类前面引用该包:import java.math.BigInteger;和import java.math.BigDecimal; BigInteg ...

  2. ownDocument和documentElement

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  3. 获取Repeater控件中的每一项数据

    var items = rptList.Items;//获取Repeater控件的所有项 foreach (RepeaterItem item in items)//遍历每一项内容 {   var t ...

  4. 在 ASP.NET MVC 应用中使用 NInject 注入 ASMX 类型的 Web Service

    这几天,有同学问到为什么在 ASP.NET MVC 应用中,无法在 .ASMX 中使用 NInject 进行注入. 现象 比如,我们定义了一个接口,然后定义了一个实现. public interfac ...

  5. jenkins系列1--自动打tag

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  6. int型的数到底最大值是多少?

    本文摘自:http://blog.csdn.net/friendbaby/article/details/6822690 刚才在百度知道上看见一个网友问int型的数最大能存多少.这个问题其实计算机系统 ...

  7. 创建母版页导致js出现“ 'document.getElementById(...)' 为空或不是对象”错误

    导读:一个控件在设计时的ID往往不同于生成页面后的ID,为了获得控件客户端ID,我们可以从生成的页面入手,冷静思考,把握主次,从底层框架入手 本文将为大家介绍一下 ASP.NET中在创建母版页时引来的 ...

  8. Select的深入应用(1)

    在子句中使用列的位置: 使用select语句创建新表: 在子句中使用列的别名: 注意,你的 ANSI SQL 不允许你在一个WHERE子句中引用一个别名.这是因为在WHERE代码被执行时,列值还可能没 ...

  9. 华为OJ平台——输出最小的k个数

    输入n个整数,输出其中最小的k个. 详细描述: 接口说明 原型: bool GetMinK(unsignedint uiInputNum, int *pInputArray, unsignedint ...

  10. [JFinal 1] JFinal和SSH中使用拦截器的对比

    导读:先前在做.NET项目时,拦截的功能主要是依靠缓存session来实现.当需要跳转到某个页面,使用某个功能查询一些数据时,会根据session中的用户值来判断是否已经正常登录,如果没有,则重定向到 ...