第五章PHP基本语法
5.1PHP语言基础
PHP代码是嵌入在HTML代码中的,通过一定的标记来区分HTML和客户端脚本的语言。PHP文件事先不需要经过编译,只要将用Dreamweaver、记事本等工具编写的.php文件复制到设定目录下,然后在网络浏览器中浏览文件即可。一个完整的PHP文件由HTML代码、PHP标记、PHP代码、注释和空格组成。
5.1.1PHP标记
……?>
……<%……%>
5.1.2PHP注释
注释可以用来解释脚本的用途、脚本编写人、编写时间等,这样可以方便编程人员更好的理解代码。在PHP程序中,加入注释的方法很灵活注释可以分为单行注释和多行注释。///*…*/#
注释的应用comment.php
PHP注释
类C++语法注释即://
";//此处是C++语法注释
/*此处是PHP语言多行注释*/
echo"
多行注释即/*...*/
";echo"
UNIXShell语法注释即:#
";#此处使用UNIXShell语法注释?>
5.1.3PHP工作原理
Web服务器Php引擎程序
(1)当用户在浏览器地址中输入要访问的PHP页面文件名,然后回车就会触发这个PHP请求,并将请求传送给支持PHP的WEB服务器。(2)WEB服务器接受这个请求,并根据其后缀进行判断如果是一个PHP请求,WEB服务器从硬盘或内存中取出用户要访问的PHP应用程序,并将其发送给PHP引擎程序。(3)PHP引擎程序将会对WEB服务器传送过来的文件从头到尾进行扫描并根据命令从后台读取,处理数据,并动态地生成相应的HTML页面。(4)PHP引擎将生成HTML页面返回给WEB服务器。WEB服务器再将HTML页面返回给客户端浏览器。
工作原理详解
最常提起的服务器软件分为两类:一类是Web服务器;另一类是应用程序服务器。IIS服务器和Apache是最常用的Web服务器软件;Java服务器、.NET服务器、PHP服务器是最常用的应用程序服务器软件。应用程序服务器与Web服务器不同,在安装之后,PHP应用程序服务器(注意,这是一个应用程序服务器)将与Web服务器一起工作,用户将向浏览器输入对以.php为扩展名的网页的请求;浏览器将会发送这个请求,并将其传递到适当的含有被请求页的Web服务器;Web服务器在自己的系统上查找请求的页,识别.php扩展名,并把整个页传递到PHP应用程序服务器执行。
如果没有PHP应用程序服务器存在,Web服务器就把整个页发送回浏览器,将其作为HTML处理,这将导致PHP被作为文本返回到用户的浏览器。如果在Web服务器上没有找到请求的网页,服务器就返回「HTTP404Error-PageNotfound」信息。假定服务器存在并正确地工作,PHP解释引擎将浏览这个页,并查找标签,它将这些标签转换成请求的HTML。一旦处理并转换了所有的PHP标签,整个页返回Web服务器,Web服务器将包装这个网页,现在只含有HTML标签,并作为响应发送到用户。这就是为什么浏览器实际上永远不会看到语法标签及其中间定义的PHP源代码的原因,而且,如果查看呈现在浏览器上的PHP网页的源代码,只能看到HTML。
5.2PHP常量5.2.1预定义常量
123456
7
预定义常量的应用
8 操作系统是:".PHP_OS;14echo"
PHP版本是:".PHP_VERSION;15echo"
程序当前行是:".__LINE__;16?>171819
5.2.2自定义常量
使用define()函数可以自己定义需要的常量。通过该函数可以定义4种类型的值:字符串、布尔值、浮点数或者整数。语法:booldefine(stringname,DataTypevalue[,boolcase_insensitive])Stringname:常量名称DataTypevalue:常量的值Boolcase_insensitive:是否大小写敏感,如果设为true,表示不敏感,默认是敏感的。当需要在程序中动态获取常量值时,可用constant函数。要判断一个常量是否已经定义,可用defined函数。通过get_defined_constant()函数获取所有当前已经定义的常量列表。
自定义变量的应用
";echoconstant("GREETING")."
";//忽略常量的大小写define("WELCOME","欢迎进入PHP论坛",true);echoWELCOME."
";echowelcome."
";//判断常量是否定义echodefined("NOT")."
";define("NOT","现在定义啦!");//定义了返回1,否则返回空行echodefined("NOT")."
";?>
5.3PHP变量5.3.1PHP变量命名
在PHP中一个美元符号后面跟上一个变量名称即表示一个变量。变量名称对大小写敏感。一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母、数字或者下划线。
变量名可以是任意长度的变量名是区分大小写(但对于函数名大小写没有区分)变量名必须以美元符号$开始变量名不能以数字开头一个变量名可以与一个函数名相同。但应尽量避免。
5.3.2PHP预定义变量
预定义变量是指在PHP内部定义的变量。这些预定义变量可以在PHP脚本中被调用,而不需要初始化。预定义的变量会随着WEB服务器以及系统的不同而不同,甚至会因为服务器的版本不同而不同。用户可以利用phpinfo()函数来查看自己系统下的预定义变量。预定义变量分3个基本类型:与WEB服务器相关的变量、与系统相关的环境变量以及PHP自身的预定义变量。
1.服务器变量2.环境变量3.PHP自身的预定义变量4.访问预定义变量建议使用超全局变量访问预定义变量。
Prevars.php
预定义变量的应用
网络协议为:".$SERVER_PROTOCOL;echo"
主机名称:".$HTTP_SERVER_VARS['HTTP_HOST'];echo"
服务器根路径:".$HTTP_SERVER_VARS['DOCUMENT_ROOT'];echo"
当前执行脚本文件:".$_SERVER['PHP_SELF'];echo"
当前执行脚本文件绝对路径:".$_SERVER['SCRIPT_FILENAME'];?>
为什么以下变量没有返回值??$REQUEST_METHOD$SERVER_PROTOCOL$HTTP_SERVER_VARS['HTTP_HOST']$HTTP_SERVER_VARS['DOCUMENT_ROOT']
这种直接在全局变量前加$美元符号的访问方法,在PHP5.0以上版本中,必须修改php.ini的设置,将Register_globals=OFF改成ON,然后重启Apache服务器
为什么以下变量没有返回值??$HTTP_SERVER_VARS['HTTP_HOST']$HTTP_SERVER_VARS['DOCUMENT_ROOT']
在PHP4.0之后,这种$HTTP_SERVER_VARS[‘’]长格式访问方式已经被禁用,要启动这种访问方式,就要修改php.ini,将register_long_arrays=OFF改成ON,然后重启Apache服务器。
5.3.3PHP数据类型
3类、8种数据类型标准数据类型:布尔型、整型、浮点型、字符串;复合数据类型:数组、对象;特殊数据类型:资源、空值。
Integer.php
整型数据类型的应用
";;echo"变量\$int_o的值是:".$int_o."
";;echo"变量\$int_h的值是:".$int_h."
";echo"变量\$int的类型是:".gettype($int)."
";echo"变量\$float的类型是:".gettype($float)."
";$int=dechex($int);echo"变量\$int被转化位十六进制的值是:".$int."
";?>
字符串在PHP中定义有3种方式:单引号方式双引号方式Heredoc方式如果要将字符串输出到浏览器可以用echo或print。如果想在浏览器中输出单引号,则必须在字符串中加入转义字符“\”。如果想在浏览器中输出双引号,则必须在字符串中加入转义字符“\”。单引号和双引号的区别是:单引号内允许的唯一转义字符就是单引号,而双引号内可以通过“\”输出各种其他特殊字符,如$或\。
String.php
单双引号转
上一篇:第一讲PHP环境搭配和
下一篇:经济民主一种关于劳动的政治经济学