最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

1.1PHP语言标记、指令分隔符、注释

IT培训 admin 3浏览 0评论

1.1PHP语言标记、指令分隔符、注释

1、PHP开始和结束标志

       PHP用<?php表示起始,并以?>表示结束。大多数嵌入式脚本语言都是以这样的模式嵌入到HTML中,例如CSS、ASP、JSP、JS等。
       PHP解析一个文件时,会寻找开始和结束标志,告诉PHP开始和停止解释其中的代码。当PHP碰到结束标志时,会简单的将其后的内容原样输出,所以一个HTML文档中可以嵌入任意多个PHP标志。

##下边内容不重要,了解即可。
       除了上述PHP开始和结束标志外,还<? ?><% %><script language="php"></script>等,在页面中嵌入存变量时,还可以用<?=$name ?>,另外<?php ?><script language="php"></script>总是可用的,其他的可以在php.ini中打开开关。
值得注意的是:
1、在php.ini中开启asp_tags,才能使用。<% %>在php7中已不再支持,不建议使用。
2、<? ?>会干扰XML文档声明,一般是禁用的,可以在php.ini中开启short_open_tag配置,或者在php编译时加入–short_open_tag选项后才可以使用。不建议使用。
3、强烈建议使用标准的<?php ?>开始结束标志。
4、只含有php脚本的文件,不允许结束标志?>存在,这样做可以防止结尾被意外注入,从而导致当使用header()、setCookie()、session_start()等设置头信息的函数是发生失败。原因:当一个php文件加载另一个php文件时,如果该文件的结束标志?>后边含有空格“ ”,那么在加载该文件后边使用设置头信息的函数会发生错误。因为这些函数不允许前面出现空格。另外这些含有结尾标志的脚本,会原样输出结束标志?>后边的空格。
PHP标记内的空格,解释时会自动忽略。
eg:
文件a.php

<?php
// anycode here
?>
[回车]
[回车]

文件b.php

<?php
ob_start();
include_once 'a.php';
$con = ob_get_contents();//此函数返回输出缓冲区的内容,或者如果输出缓冲区无效将返回FALSE 。
ob_clean();
var_dump($con)
?>

执行b.php文件会输出string(4) " "。


2、指令分隔符分号
       PHP每个指令后需要英文分号结束,php的结束标志?>隐含表示了一个分号,所以在一个php代码中的最后一行可以不用分号结束。
eg1:

<?php echo "123"?> //最后的结束标记隐含表示了一个分号,所以这里可以不用分号结束

eg2:

<?phpecho "123"; //这是一个php指令,后面一定要加上分号表示结束

3、程序注释
       注释在程序设计中是相当重要的一部分。注释的内容会被Web服务器引擎忽略不会被解释执行。注释一定要写在代码上边或者右边,千万不要写在代码的后边。
1)注释的作用:
①说明代码的作用,给阅读提供帮助,不管是自己还是他人,方便日后的维护。
②注释当时觉得不合适的代码,便于以后想使用时,打开注释即可
③用于调试
2)注释分类:
①单行注释。主要有两种,分别是“//”和“#”。
②多行注释。以“/*"开始和“*/”结束。多行注释无法嵌套多行注释,但是单行注释和多行注释是可以互相包含的。
eg1:
下面就是多行注释嵌套多行注释的错误示例。

 <?php/*echo 123;/*在多行注释里边嵌套多行注释是不行的*/*/

3)注释注意事项
注释只会注释掉结束标志之前的内容,不会注释掉结束标志“?>”
eg:
下边"?>"不会被注释掉

<?phpecho 123;
//?>

4)规范注释
PHPDocumentor工具,会促使你规范注释,对已有的规范注释可以快速生成具有相互参照,索引等功能的API文档。多行注释一般使用"/**"开始“*/”结束。我们常见的注释中有@param大概也是因为该工具,尽管你没有使用该工具。
eg:
规范的多行注释

<?php/*** 设置当前请求的调度信息* @access public* @param array|string  $dispatch 调度信息* @param string        $type 调度类型* @return void*/public static function dispatch($dispatch, $type = 'module'){...}

1.1PHP语言标记、指令分隔符、注释

1、PHP开始和结束标志

       PHP用<?php表示起始,并以?>表示结束。大多数嵌入式脚本语言都是以这样的模式嵌入到HTML中,例如CSS、ASP、JSP、JS等。
       PHP解析一个文件时,会寻找开始和结束标志,告诉PHP开始和停止解释其中的代码。当PHP碰到结束标志时,会简单的将其后的内容原样输出,所以一个HTML文档中可以嵌入任意多个PHP标志。

##下边内容不重要,了解即可。
       除了上述PHP开始和结束标志外,还<? ?><% %><script language="php"></script>等,在页面中嵌入存变量时,还可以用<?=$name ?>,另外<?php ?><script language="php"></script>总是可用的,其他的可以在php.ini中打开开关。
值得注意的是:
1、在php.ini中开启asp_tags,才能使用。<% %>在php7中已不再支持,不建议使用。
2、<? ?>会干扰XML文档声明,一般是禁用的,可以在php.ini中开启short_open_tag配置,或者在php编译时加入–short_open_tag选项后才可以使用。不建议使用。
3、强烈建议使用标准的<?php ?>开始结束标志。
4、只含有php脚本的文件,不允许结束标志?>存在,这样做可以防止结尾被意外注入,从而导致当使用header()、setCookie()、session_start()等设置头信息的函数是发生失败。原因:当一个php文件加载另一个php文件时,如果该文件的结束标志?>后边含有空格“ ”,那么在加载该文件后边使用设置头信息的函数会发生错误。因为这些函数不允许前面出现空格。另外这些含有结尾标志的脚本,会原样输出结束标志?>后边的空格。
PHP标记内的空格,解释时会自动忽略。
eg:
文件a.php

<?php
// anycode here
?>
[回车]
[回车]

文件b.php

<?php
ob_start();
include_once 'a.php';
$con = ob_get_contents();//此函数返回输出缓冲区的内容,或者如果输出缓冲区无效将返回FALSE 。
ob_clean();
var_dump($con)
?>

执行b.php文件会输出string(4) " "。


2、指令分隔符分号
       PHP每个指令后需要英文分号结束,php的结束标志?>隐含表示了一个分号,所以在一个php代码中的最后一行可以不用分号结束。
eg1:

<?php echo "123"?> //最后的结束标记隐含表示了一个分号,所以这里可以不用分号结束

eg2:

<?phpecho "123"; //这是一个php指令,后面一定要加上分号表示结束

3、程序注释
       注释在程序设计中是相当重要的一部分。注释的内容会被Web服务器引擎忽略不会被解释执行。注释一定要写在代码上边或者右边,千万不要写在代码的后边。
1)注释的作用:
①说明代码的作用,给阅读提供帮助,不管是自己还是他人,方便日后的维护。
②注释当时觉得不合适的代码,便于以后想使用时,打开注释即可
③用于调试
2)注释分类:
①单行注释。主要有两种,分别是“//”和“#”。
②多行注释。以“/*"开始和“*/”结束。多行注释无法嵌套多行注释,但是单行注释和多行注释是可以互相包含的。
eg1:
下面就是多行注释嵌套多行注释的错误示例。

 <?php/*echo 123;/*在多行注释里边嵌套多行注释是不行的*/*/

3)注释注意事项
注释只会注释掉结束标志之前的内容,不会注释掉结束标志“?>”
eg:
下边"?>"不会被注释掉

<?phpecho 123;
//?>

4)规范注释
PHPDocumentor工具,会促使你规范注释,对已有的规范注释可以快速生成具有相互参照,索引等功能的API文档。多行注释一般使用"/**"开始“*/”结束。我们常见的注释中有@param大概也是因为该工具,尽管你没有使用该工具。
eg:
规范的多行注释

<?php/*** 设置当前请求的调度信息* @access public* @param array|string  $dispatch 调度信息* @param string        $type 调度类型* @return void*/public static function dispatch($dispatch, $type = 'module'){...}
发布评论

评论列表 (0)

  1. 暂无评论