零基础学PHP之2
更新时间:2023-03-17 18:17:01 阅读量: 综合文库 文档下载
第2章 PHP语言
经过前面预备知识的学习,从本章开始,正式进入PHP语言的学习。PHP作为一种专门用来开发Web应用的嵌入式语言,大量借用了C、C++和Perl语言的语法,同时加入了一些其它语法特征,使编写Web程序更快更有效。之所以说PHP是嵌入式语言,是因为用PHP开发的Web程序,大多都要在HTML文档中插入PHP代码,或者使用PHP代码生成某些HTML文档,以满足Web应用的需求和特点。
PHP一般作为HTTP服务器(通常是Apache)的一个模块运行。这意味着,当用户访问到一个含有PHP代码的Web页面时,HTTP服务器就会调用这个模块,通过这个模块来分析并执行该页面的PHP代码,最终将执行结果返回给用户。PHP支持多种数据库,如MySQL、dBase、MS_SQLServer、Oracle等。这对于基于数据库的Web开发来说是大有裨益的。
PHP从上世纪90年代中期问世以来,已经推出了很多版本,到现在已经是PHP5。本书所讲述的PHP语言,将以PHP5为准。本书凡是出现“PHP”的地方,除非特别说明,都将指的是PHP5。
2.1 基本语法
PHP的语法和C、C++等语言的语法很相似,有C语言基础的读者,可以非常轻松地掌握PHP的基本语法。即便是没有任何语言基础,也是值得庆幸的,那样不会受其它语言的干扰,可以更快速地接受PHP的语法。
事实上,PHP的语法并不复杂,再加上PHP提供了大量的预定义函数,使PHP开发事半功倍。只要按本书的讲述、一步步地学习下去,再加上自己的一点信心,相信读者会发现PHP很容易学习掌握,并且应用起来也很快速方便。 本节,先简单了解一些PHP的基本语法。
2.1.1 PHP分隔符
因为PHP是嵌入式脚本语言,需要使用某种分隔符将PHP代码和HTML的内容区分开来,这里所说的分隔符就是“”,它们将PHP代码包含在其中,也就是说,所有的PHP代码都应该写在“”之间。如下代码所示:
一个段落
//这一行是HTML,PHP分析器将会忽略这行代码,不做处理//这一行是PHP代码,PHP分析器将会执行这段代码
另外一个段落
2.1.2 给PHP程序添加注释
程序中的注释是指在一个程序文件中,对一个代码块或一条程序语句所作的文字说明,注释是提供给开发人员看的,因此,程序中的注释会被计算机忽略而不会被执行。PHP中的主要注释风格有:
使用符号“//”添加一个单行的注释。 使用符号“#”添加一个单行的注释。
使用“/*”和“*/”添加一个多行的注释,也可以用来单行注释。
2.2 变量
变量是任何程序设计语言中一个基本而且重要的概念。本节的内容将讲述PHP变量基本概念、变量的类型、PHP预定义变量以及如何使用PHP内置函数对变量进行一些处理。
2.2.1 什么是变量
在程序中可以改变的数据量叫做变量,变量必须有一个名字,用来代表和存放变量的值。PHP中使用美元符($)后跟变量名来表示一个变量,如$var就是一个变量。PHP中的变量名是区分大小写的,因此$var和$Var表示的是不同的两个变量。
PHP变量的命名需要遵守一定的规则,这个规则是:一个有效的变量名必须由英文字母或下划线开头,后面可以跟任意数量的英文字母、数字、下划线或其组合。如$abc、$_ab_c、$a1b_c2都是合法的变量名,而$3xyz就不是合法变量名,因为它以数字开头。
2.2.2 变量的数据类型
PHP属于弱类型语言。这就是说,变量的数据类型一般不用开发人员指定,PHP会在程序执行过程中,根据程序上下文环境决定变量的数据类型。如一串数字 “789”,在用echo语句输出时,它作为字符串处理,但是做数学运算时,它就作为整数处理。PHP的变量主要有以下类型:
整数类型。 浮点类型。 字符串类型。 布尔类型。 数组类型。 对象。
2.2.3 变量类型的转换
和C、C++等语言不同,PHP在定义变量时,不需要明确指定变量的类型。也就是说,把一个整数指定给变量$v,那么$v就是一个整型变量,如果把一个字符串指定给它,那么
它就是一个字符串变量。若要转换类型,在PHP程序中也是很自由的,一般不必经过特殊的转换。
当然,PHP中也可以对变量做强制转换,这点和C语言相似,在要转换的变量之前加上目标类型,目标类型用括号括起来。 PHP中允许的强制类型转换有: (int),(integer)——转换成整型。
(bool),(boolean)——转换成bool型。
(float),(double),(real)——转换成浮点型。 (string)——转换成字符串。 (array)——转换成数组。 (object)——转换成对象。 2.2.4 可变变量
可变变量是PHP中比较特别的一个概念,可变变量是指这样一个变量,它将某个变量的值作为自己的变量名。
2.2.5 PHP的预定义变量
PHP提供了大量的预定义变量,可以在程序或文件的任何地方使用它们。这些变量大多数依赖于服务器的版本及其配置。本书主要讲述PHP5的预定义变量,这些预定义变量和以前版本的有些不同,有兴趣的读者可自行了解。下面是PHP中一些常用的预定义变量。
$GLOBALS:包含指向当前程序中全局范围内有效的变量,它是一个数组,该数组的索引(或键名)就是全局变量的名称。
$SERVER:该全局变量是一个包含诸如头信息、路径和脚本位置的数组。常见的$_SERVER的元素包括PHP_SELF(当前正在执行的脚本的文件名)、SERVER_ADD(当前执行脚本所在服务器的IP地址)、SERVER_NAME(当前执行脚本所在服务器主机的名称)、DOCUMENT_ROOT
(当前脚本所在文档的根目录)、SCRIPT_FILENAME(当前执行脚本的绝对路径)、SCRIPT_NAME(当前脚本的路径)、HTTP_REFERER(链接到当前页面的前一页面的URL)、REQUEST_URI(访问此页面所需的URI)等。
$_GET:通过HTTP的GET方法提交至脚本的表单变量。 $_POST:通过HTTP的POST方法提交至脚本的表单变量。 $_FILE:通过HTTP的POST文件上传提交至脚本的变量。 $_COOKIE:通过HTTP的Cookies方法提交至脚本的变量。 2.2.6 判断变量的类型
从本小节开始,将介绍一些处理变量的方法。因为在PHP中通常通过一些预定义函数来处理变量,所以,需要读者对函数的概念有个大概了解。
简单地说,函数是指完成某种特定功能的代码块,可以向函数传入参数,函数对参数进行处理,并且将处理结果返回给用户。本书将在后面详细介绍函数的概念。
在PHP中,可以通过以下函数对变量的类型做判断。 函数is_integer判断变量是否为整数。 函数is_string判断变量是否为字符串。 函数is_double判断变量是否为浮点数。 函数is_array判断一个变量是否为数组。 2.2.7 获取变量的类型
在PHP中,可以使用预定义函数gettype取得一个变量的类型,它接受一个变量作为参数,返回这个变量的类型。
2.2.8 设置变量的类型
使用预定义函数settype设置一个变量的类型,该函数接受两个参数,第一个参数是变量名,第二个参数是要设置的变量的数据类型。
2.2.9 判断一个变量是否已经定义
使用预定义函数isset判断一个变量是否已经定义,它接受一个变量作为参数值,返回值如果为TRUE,说明该变量定义过,否则,说明该变量没有被定义。
2.2.10 删除一个变量
使用unset语句删除一个变量。从PHP4开始unset不再有返回值,因此,严格意义上讲,它并不是一个函数,而是一个PHP的语言结构。可以用unset一次删除多个PHP变量。
2.3 常量
和变量相对应的概念是常量。上节介绍了变量、变量的数据类型及对变量的一些操作、处理,这节将介绍常量的概念及使用。
2.3.1 什么是常量
在程序执行过程中,其值不能改变的量叫做常量。这就是说,常量不能再被定义成其它的值。常量也可以分为不同的类型,如10、0、-12是整型常量,1.23、-0.45是浮点型常量,常量的类型从形式上就可以判别。
PHP中有一些定义好的常量,在程序中可以直接使用。开发人员也可以根据程序的需要,自己定义新的常量。
2.3.2 定义常量
在PHP中通过define()函数定义一个常量。合法的常量名只能以字母和下划线开始,后面可以跟着任意字母、数字或下划线。常量一旦定义就不能再修改或者取消定义。
正在阅读:
零基础学PHP之203-17
《松鼠和松果》说课05-27
市场部作业指导书01-17
《2018年全员合规培训测试题》11-14
校长个人教学工作总结参考范本04-03
2019年高考物理一轮复习 专题7.15 带电粒子在非匀强电07-12
《梦游天姥吟留别》教学设计:高中语文合作探究式教学法教学案例103-19
人教版六年级下册美术教案02-29
2012.9概率作业集(完整版)04-28
人力资源管理自测题03-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 基础
- PHP
- 杭州海口重庆广州市人大常务委员会讨论决定重大事项的规定
- 李某某职务侵占案—承运人盗取已封缄货物构成盗窃罪
- 滨水景观规划设计相关书籍和文献资料整理
- 八上25课杜甫诗三首知识清单
- 南开19春学期(1709、1803、1809、1903)《社会政策概论》在线作业答案
- 2015天津市南开区九年级物理二模试卷(word)
- 机械制图习题册参考答案
- 实验二 彩灯实验 - 图文
- 浅议如何做好火灾调查询问及询问笔录制作工作
- 拍摄以及剪辑的一些问题
- java课程设计实验报告
- 电子综合实验报告数字化失真度测量仪的设计(有完整程序) - 图文
- 机电备课笔记 - 图文
- 单元机组集控运行题库
- 农商银行压降不良贷款策略
- 城设计学院两访两创活动实施方案-武汉大学城设计学院
- 爱岗敬业 - 廉洁从教演讲稿
- 《宝玉挨打》教学设计
- 医疗机构申请体检诊疗科目审核表
- 千份热门课后习题答案大全