【web 开发基础】php 开发基础快速入门 (3)-PHP程序符号标记和程序注释的使用及空白符详解

简介: 以<?php开始和以 ?>结束的标记是标准风格的标记,属于xml风格,这也是PHP推荐使用的标记形式,服务器管理员不能禁用这种风格的标记,如果将PHP嵌入到XML或者XHTML中,则需要使用<?php?>以保证符合标准,如果没有特殊要求,在开发过程中一般默认使用此风格.以<script language="php">开始和以</script>结束是长风格标记,这种标记是最长的,这种用法就是javascript和vbscript等脚本语言的写法,如果你使用的html编辑器无法使用其他风格的标记可以使用这个标记来界定PHP代码,不过这在日常开发中是比较少用的.以<?开始和以?>结束的标记是最简

前言

PHP开发基础开速入门系列

  1. 【web 开发基础】php 开发基础快速入门 (1)-PHP 介绍及开发环境快速安装和基本使用介绍
  2. 【web 开发基础】php 开发基础快速入门 (2)-PHP 的程序开发

这是PHP开发基础快速入门的第三篇文章,前两篇文章介绍了PHP的大致用法,书接上回,之前的文章对PHP的开始结束标记有过简单描述,这次详细唠唠PHP的标记相关知识以及程序注释等内容

PHP程序开始和结束标记

当脚本中有PHP代码时,可以使用<?php ?>,<? ?>,<%%>,<script language="php"></script>等标记来界定PHP代码,在上篇文章中我说过,PHP是可以嵌入到html页面中,当我们需要在html页面中嵌入纯变量时,我们可以使用<?=$value?>这种形式,其中<?php ?>和<script language="php"></script>总是可用的,另外两种是短标记和ASP风格标记,可以在PHP的配置文件php.ini中设置开启或者关闭.下面在代码中展示这4中风格代码的展示:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>PHP基础3</title>
</head>
<body>
    <h1><?php echo "<span style='font-size:18px;color:#0f0;'>PHP开始结束标记学习";?></h1>
    <h1><?php echo "<span style='font-size:18px;color:#0f0;'>PHP代码可嵌入html";?></h1>
  <?
    $b =0;
    echo "这是短< ? ? >标记使用<br>";
  ?>
  <?="这是简写标记<br>"?>
  <% echo "这是ASP风格的简写标记<br>"%><!--这个需要在php.ini中设置-->
  <script language="php">
  echo '这是script形式标记使用<br>'; //单双引号总是成双成对出现的,由于字符串内部已有双引号,外面必须单引号,避免代码混淆导致程序报错
  </script>
</body>
</html>

执行结果:

网络异常,图片无法展示
|

以<?php开始和以 ?>结束的标记是标准风格的标记,属于xml风格,这也是PHP推荐使用的标记形式,服务器管理员不能禁用这种风格的标记,如果将PHP嵌入到XML或者XHTML中,则需要使用<?php?>以保证符合标准,如果没有特殊要求,在开发过程中一般默认使用此风格.

以<script language="php">开始和以</script>结束是长风格标记,这种标记是最长的,这种用法就是javascript和vbscript等脚本语言的写法,如果你使用的html编辑器无法使用其他风格的标记可以使用这个标记来界定PHP代码,不过这在日常开发中是比较少用的.

以<?开始和以?>结束的标记是最简风格的标记,他遵循SGML(标准通用置标语言)处理说明的风格.但是系统偶尔会禁用这种形式.因为他会干扰XML文档的声明.只有通过php.ini配置文件中的指令short_open_tag打开,或者在PHP编译时加入了--enable-short-tags选项后才可用.

以<%开始和以%>结束标记是ASP风格的标记,这种形式的标记很少会使用,通常也不推荐使用,如果需要使用可以在php.ini中配置开启asp_tags选项,设置为On即可使用它,这是为习惯了ASP或者ASP.NET的编程风格的人设计的.默认情况下是被禁用的,所以移植性也较差.

注:为了防止短标签<??>和<%%>与一些技术发生冲突,有时需要在PHP配置文件中将其关闭,所以这两个标记不是总是可用的.而且尽量不要多种标签混用,特别是其他标签和asp风格的标签混用,容易发生一些未知的问题.,推荐使用<?PHP?>这种完整的,标准的标记来界定PHP代码,对于只包含PHP代码的代码文件,结束标记?>是不允许存在的.因为PHP自身不需要 ?>来结束.这样做可以防止它的末尾被意外地注入,从而导致当使用header(),setCookie(),session_start()等设置头信息的函数时发生错误

PHP指令的代码分隔符:【;】

与C、Perl及java等大多数语言一样,PHP语句分为两种:一种是在程序中使用结构定义语句,例如流程控制,函数定义,类的定义等,是用来定义程序结构使用的语句,在结构定义语句后面不能使用分号最为结束;另外一种是在程序中使用功能执行语句,比如:声明变量,内容的输出,函数的调用等,是用来在程序中执行某些特定功能的语句,这种语句也称为指令,PHP需要在每条指令后用分号结束。就相当于我们写作文,说完一句话,写个句号,代表这句话说完了。一段PHP代码的结束标记?>隐含表示一个分号,所以在PHP代码段中的最后一行可以不用分号结束,如后面还有新行,那么代码段的结束标记包含了行结束

<?phpecho"你好,这是一句完整的话";
echo'<br>';
?><?phpecho"你好,这是一句完整的话"?>

网络异常,图片无法展示
|

像下面这段代码会因为少了分号结束符而报错:

<?phpecho"你好,这是一句完整的话"echo'<br>';
?>

直接报语法错误:

网络异常,图片无法展示
|

PHP中的程序注释

注释在程序设计中是很重要的一部分,严格意义上讲一份代码应该有一半的内容为注释内容。当然这说的有点夸张,如果命名规范,也可以减少注释,但是这也更说明了注释在代码中的重要性。注释内容会被web服务器引擎忽略,不会被执行。程序员在程序中书写注释是一种良好的习惯。

注释的作用

可以将写过的觉得不合适的代码暂时注释,不急于删除,如果再想使用,可以去掉注释符号,重新启用代码

  • 注释的主要目的在于说明程序,给自己或者阅读代码的团队小伙伴提供帮助,使程序更容易理解,增强代码的可读性,以方便维护人员后期的维护
  • 注释对调试程序和编写程序也可起到很好的帮助作用
  • php支持C/C++和UNIX Shell风格(perl风格)的注释.PHP的注释符号有三种:
  1. 以'/*'开头和'*/'闭合的多行注释符
  2. 以'#'和'//'开始的单行注释

注:注释符开始符号一定要写在被注释代码的上面或右边 不要写到代码下面:

<?php/*这是一个多行为本注释可以换行*/echo"你好,这是一句完整的话";
echo'<br>';
?><?php#这是一个当行注释//这是一个当行注释echo"你好,这是一句完整的话";
?>

如果我们代码被注释了不会被解释执行:

<?php#这是一个当行注释//这是一个当行注释//echo "你好,这是一句完整的话";/*$a = 4;if($a>5){echo "数字大于5";}*/?>

在使用行注释符号#或者//之后到行结束前,或PHP结束标记?>或%>之前所有内容都是注释内容,这意味着在//?>之后的html代码会被现实出来.?>跳出了PHP模式返回了html模式:

<h1><?php echo "<span style='font-size:18px;color:#0f0;'>PHP开始结束标记学习";//这是注释?>html内容</h1>
<h1><?php echo "<span style='font-size:18px;color:#0f0;'>PHP代码可嵌入html";//这是注释?>html内容2</h1>

结果:

网络异常,图片无法展示
|

除了前面几种注释之外,还有一种常用的注释:多行文档注释(PHPDocumentor)这也是推荐使用的注释方法.PHPDocumentor是一个用PHP脚本编写的工具,对于有规范注释的PHP程序,他能够快速生成具有相互参照,索引等功能的API文档.可以通过在客户端浏览器上操作生成文档,文档可以转换为PDF,html,CHM几种形式,非常方便.PHPDocumentor是从源代码的注释中生成文档,因为给程序做注释的过程,也就是编制文档的过程.这也可以促使程序员要养成良好的编程习惯,尽量使用规范,清洗的文字为程序做注释,同时也避免时候编制文档和文档的更新不同步等问题.在PHPDocumentor中,注释分为文档性注释和非文档性注释,所谓文档注释,是指那些放在特定关键字前面的多行注释,特定关键字是指能够被PHPDocumentor分析的关键字,比如class,var等,那些没哟在关键字前面或者不规范的注释就成为非文档性注释,这些注释将不会被PHPDocumentor所分析,也不会在产生的API文档中.案例如下:

<?phpclassPerson{
public$name;
publicfunctionsay(){
echo$this->name . "say hello";
  }
}
interfaceBody{
publicfunctionwrite();
}
interfaceBody2{
publicfunctiontake();
}
classStudentextendsPersonimplementsBody,Body2 {
public$name;
public$grade;
publicfunctionsay(){
echo$this->name . "说他的数学成绩是:". $this->name ;
  }
/**写作业方法@param string $subject    学科名称@return mixed       方法返回值*/publicfunctionwrite($subject="数学"){
echo$this->name . "正在写" .$subject. "作业!";
  }
publicfunctiontake(){
echo$this->name . "拿着一本书.";
  }
}

程序中的空白处理

通常空白符:包括空格/Tab制表符/换行等在PHP中的无关紧要,会被PHP引擎忽略.可以将一个语句站开成任意行,或者将语句紧缩成一行.空格和空行的合理运用可以增强代码的清晰性和可以度性.但如果不合理运用将适得其反.空行将逻辑相关的代码段分隔开,以提高代码可读性:

  1. 应该使用两个空行的情况:
  2. 一个源文件的两个代码段之间
  3. 两个类的声明之间
  4. 总是使用一个空行
  5. 两个函数声明之间
  6. 函数内的局部变量和函数的第一条语句之间
  7. 块注释或单行注释之前
  8. 一个函数内的两个逻辑代码段之间,用来提高代码可读性
  9. 空格的应用于关键字与括号之间,不过序要注意的是,函数名称与左括号之间不应该用空格分开:
  10. 一般在函数的参数列表中的逗号后面插入空格
  11. 数学算式的操作与运算符之间应该添加空格(二进制运算与一元运算符除外)
  12. for语句中的表达式应该用逗号分开,后面添加空格
  13. 强制类型转换语句中的强制类型的右括号与表达式之间应该用逗号隔开,并添加空格

万丈高楼平地起,学习任何一门语言基础知识总是少不了的.下次接着唠唠PHP中的变量相关的内容

目录
相关文章
|
7天前
|
SQL 存储 安全
PHP 与现代 Web 应用的安全挑战与解决方案
随着 Web 应用的发展,PHP 作为一种广泛使用的服务器端脚本语言,面临着越来越复杂的安全挑战。本文探讨了当前 PHP 开发中常见的安全问题,并提供了相应的解决方案,帮助开发者构建更安全可靠的 Web 应用。 【7月更文挑战第8天】
17 1
|
3天前
|
安全 大数据 编译器
PHP 8: 探索新特性及其对现代Web开发的影响
在这篇文章中,我们将深入探讨PHP 8的最新特性,包括JIT编译器、联合类型、匹配表达式等,并分析这些更新如何影响现代Web开发。通过具体示例和代码片段,本文旨在为开发者提供一个清晰的指南,以便更好地利用PHP 8的新功能优化和加速他们的应用程序。
10 2
|
3天前
|
编译器 测试技术 PHP
深入理解PHP 7的新特性及其对现代Web开发的影响
【7月更文挑战第12天】本文将探讨PHP 7版本中引入的关键改进和新增功能,以及这些变化如何优化了性能、提升了代码的可维护性,并促进了现代Web开发的最佳实践。通过具体示例,我们将深入了解这些新特性在日常开发中的应用,以及它们为开发者带来的实际益处。
10 2
|
3天前
|
PHP 开发者
PHP 8 新特性及其对现代Web开发的影响
PHP 8作为最新版本,引入了一系列强大的新特性和改进,这些变化不仅仅是语言本身的提升,更深刻地影响了现代Web开发的方式和效率。本文将深入探讨PHP 8的关键特性,分析其在开发实践中的应用和优势,帮助开发者更好地理解和利用这些新特性。 【7月更文挑战第12天】
9 1
|
7天前
|
安全 编译器 PHP
深入理解PHP 8的新特性及其对现代Web开发的影响
【7月更文挑战第8天】随着PHP 8的发布,这个广受欢迎的服务器端脚本语言迎来了重大更新,带来了性能提升和更现代化的编程特性。本文将探索PHP 8中的新特性,并分析它们如何改变开发者构建和维护Web应用的方式,同时指出这些变化对现有项目升级可能带来的挑战与机遇。
|
10天前
|
设计模式 Rust 安全
深入理解PHP 7的新特性及其对现代Web开发的影响
本文通过数据驱动的分析,探讨了PHP 7的发布如何革新了Web开发的面貌。文章首先概述了PHP 7带来的性能提升与新特性,然后通过实际案例和性能测试数据,详细讨论了这些新特性对提高代码效率、增强安全性和支持现代编程范式的具体影响。最后,文章将评估PHP 7在当前Web开发环境中的地位,并对其未来的发展做出展望。
|
5天前
|
安全 编译器 数据处理
PHP 8新特性及其对现代Web开发的影响
随着PHP 8的发布,这一广泛使用的服务器端脚本语言引入了多项新特性和性能改进。本文将深入探讨PHP 8的关键更新,包括JIT编译器、联合类型、命名参数、匹配表达式等,并分析这些变化如何影响现代Web开发实践,以及开发者如何利用这些新工具来构建更快、更安全、更易维护的应用程序。
8 0
|
5天前
|
编译器 API PHP
PHP 8新特性及其对现代Web开发的影响
随着PHP 8的发布,这一广泛使用的服务器端脚本语言迎来了其发展历程中的一个重要里程碑。本文将深入探讨PHP 8引入的关键新特性,如JIT编译器、联合类型、匹配表达式等,并分析这些变化如何影响现代Web开发的实践和原则。通过具体案例和性能数据,我们将展示PHP 8如何优化代码编写、增强程序性能以及提升项目维护性,从而为开发者提供更高效、更可靠的开发体验。
7 0
|
9天前
|
Java 应用服务中间件 Linux
Tomcat安装部署[单机软件],可以让用户开发的WEB应用程序,变成可以被访问的网页,Tomcat的使用需要jdk环境
Tomcat安装部署[单机软件],可以让用户开发的WEB应用程序,变成可以被访问的网页,Tomcat的使用需要jdk环境
|
10天前
|
JSON 安全 编译器
PHP 8的新特性及其对现代Web开发的影响
随着PHP 8的发布,这一流行的服务器端脚本语言带来了诸多改进和新增特性,这些变化不仅提升了语言本身的性能和安全性,还对现代Web开发实践产生了深远影响。本文将深入探讨PHP 8的关键新特性,包括JIT编译器、联合类型、命名参数、匹配表达式等,并分析它们如何优化代码编写、强化类型安全以及提高执行效率。同时,我们还将讨论这些新特性对开发者构建更快、更可靠应用程序的能力所产生的积极效应。
7 0