PHP语言基础知识
任务1.1 PHP开发环境搭建
PHP(PHP:Hypertext Preprocessor,超文本预处理器)是一种在服务器端执行的多用途脚本语言。PHP开放源代码,可嵌入到HTML中,尤其适合动态网站的开发,现在已被很多网站编程人员广泛运用。
1.1 PHP简介
1.1.1PHP语言特性
1.免费开源,自由获取
PHP是一种免费开源的语言,用户可以自由获取最新的PHP核心引擎和扩展组件,甚至可以得到PHP核心引擎的源代码,并根据需求部署适合的PHP环境。
2.移植性强,组件丰富
PHP的扩展移植性非常强大,甚至可以部署在用户可以想到的所有操作系过统的环境上,如Windows/Linux/Mac/Android/0S2等。它还拥有非常强大的组件支持功能,开发一个普通的项目几乎不再需要收集和查找组件,只需在PHP的引擎中开启即可。
3.语言简单,开发效率高
PHP之所以在全球迅速推广开来,最重要的一个因素是它的语法简单,结构图清晰,可让没有专业编程基础的人轻松地掌握PHP的编程。PHP在编译和开发过程中既保留了传统的混编模式,又提供了MVC的三层架构风格,这让PHP在开发和部署项目时的效率非常高,而不需要太多的周边知识来完成它。
4.PHP功能强大的函数库
PHP拥有非常多的功能处理函数,包括强大的数组与字符串函数、目录文件函数、对不同文件类型的处理函数、支持所有的数据库函数、对不同网络协议的节持等。
1.2 PHP开发环境与工具
1.2.1 PHP开发环境
PHP 是一种服务器脚本语言,虽然可以独立运行,但像学习任何一门编程语言之前一样,开始都必须搭建和熟悉开发环境。进行网络程序开发,除了安装一个PHP程序库外,还需要安装Web服务器、数据库系统以及一些扩展内容。PHP能够运行在绝大多数主流的操作系统上,包括Linux、UNIX、Windows以及 Mac 0S等。作为一种轻便的网络编程语言,PHP 支持 Apache、IIS、Nginx等网络服务器。
1.2.2 PHP集成开发工具
PHP有多种开发工具,既可以单独安装 Apache、MySQL和 PHP这3个软件并进行配置,也可以使用集成开发工具和其他动态网站技术相比,PHP的安装与配置相对比较复杂。也可以使用XAMPP,AppServ,phpStudy.
1.2.3 PHP代码编辑工具
选择PHP的代码编辑工具,应该考虑一下四方面的因素:
(1)语法的高亮显示;
(2)格式排版功能;
(3)代码提示功能;
(4)界面设计功能
以下介绍几款常用的代码编辑工具:Notepad++,ZendStudio,NetBeans,Visual Studio Code
任务 1.2 PHP基础知识学习及应用
1.3 PHP入门
在编写PHP动态网页之前,需要了解一些PHP编程的入门知识,例如,PHP标记符,注释语句,PHP语句和语句块,PHP标识符,PHP关键字等。
1.3.1 PHP标记符
由于PHP是嵌入式脚本语言,它在实际开发中经常会与HTML内容混编在一起,所以为了区分HTML代码和PHP代码,需要使用标记符对PHP代码进行标识,让Web 服务器识别PHP代码的开始和结束。对于PHP7之前的版本,支持4种标记,而在PHP7中,仅支持标准标记(<?php?>)和短标记(<??>),接下来对这2种标记的使用进行详细介绍。
1. 标准标记
标准标记以"<?php"开始,以"?>"结束
1. <?php
2. echo 'Hello World!';
3. ?>
标准标记是最常用的标记类型,服务器不能禁用这种风格的标记这是本书使用的标记风记风格,也是推荐读者使用的标记风格。当文件内容是纯 PHP代码时,可以省略结束标记,并且开始标记最好顶格书写,避免结果中出现不必要的空白字符。
2. 简短标记
简短标记以"<?",以”?>"结束
1. <?
2. echo 'Hello World!';
3. ?>
这种风格的标记最为简单,输入字符最少,但是如果要使用它,需要将php.ini 配置文件中的short_open_tag 选项设置为0n,然后重启 Apache服务器即可。
1.3.2 PHP注释
1.单行注释
1. <?php
2. echo 'Hello World!';//输出字符串
3. ?>
上述示例中,“//”后的内容“输出字符串”是一个单行注释,因此不会被输出。
2.多行注释
1. <?php
2. / *
3. echo 'Hello World!';
4. echo 'Hi,PHP';
5. * /
6. ?>
上述示例中,“/*”和“*/”的内容为多行注释,多行注释以“/*”开始,以“*/”结束。多行注释可以嵌套单行注释,但不能再嵌套多行注释。
3.Shell风格的注释
1. <?php
2. echo 'Hello World!';#输出字符串
3. ?>
上述示例中,“#”是一个shell风格的单行注释。由于“//”在PHP开发中更加流行,因此推荐读者使用“//”注释。
1.3.3 PHP语句和语句块
PHP程序由一条或多条PHP语句构成,每条语句都以英文分号“;”结束在书写PHP代码时,一条PHP语句一般占用一行。如果多条 PHP语句之间存在着某种联系,可以使用“{”和“}”将这些PHP
语句包含起来形成一个语句块。
1. <?php
2. {
3. echo 'Hello World!';
4. echo'<br>';
5. echo 'Hi,PHP';
6. }
7. ?>
1.3.4 PHP标识符
在 PHP程序开发中,经常需要在程序中定义一些符号来标记一些名称,如变量名、函数名、类名、方法名等,这些符号被称为标识符。在PHP中,定义标识符要遵循以下几点规则。
(1)标识符只能由字母、数字和下画线组成。
(2)标识符可以由一个或多个字符组成,不能以数字字符开头。
(3)当标识符用作变量名时,区分大小写。
(4)当标识符由多个单词组成,建议使用下画线进行分隔,如:user_name。
1.3.5 PHP关键字
关键字是编程语言里事先定义好并赋予了特殊含义的单词,也称作保留字。如class关键字用于定
义类,echo用于输出数据。
1.4 数据类型
1.4.1 标量数据类型
标量数据类型是数据结构中最基本的单元。只能存储一个数据。PHP中的标量数据类型又可细分为4种类型。
1.4.2 复合数据类型
复合数据类型包括数组(array)和对象(object)两种。
1.数组
数组是一组数据的集合,它把一系列数据组合起来,形成一个操作的整体。数组中可以包括很多数据。如标量数据,数组,对象,资源以及PHP中支持的其他语法结构等。PHP中的数组实际上是一个有序映射。映射是一种把value(值)关联到keys(键名)的类型。数组通过函数array()定义,其值使用“key=>value”的方式设置,多个值通过逗号分隔。当然也可以不使用键名,默认是0,1,2,3。
2.对象
目前的编程语言用到的方法有面向过程和面向对象两种。在PHP中,用户可以自由使用这两种方法。对象是一种高级的数据类型。任何事物都可以被看作一个对象。一个对象由部分属性值和方法构成,属性表明对象的一种状态,方法通常是用来实现功能的。
1.4.3 特殊数据类型
特殊数据类型包括资源(resource)和空值(null)两种。
1.资源
资源是-种特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建立和使用的。资源类型变量有打开文件、数据库连接、图形画布区域等特殊句柄。
2.空值
空值,顾名思义,表示没有为该变量设置任何值。另外,空值不区分大小写,如null和NULL的效果是一样的。被赋予空值的情况有以下3种。(1)没有赋任何值;(2)被赋值为null;(3)被函数unset()处理过的变量。
1.4.4 数据类型转换与检测
1.数据类型转换
PHP数据类型之间的转换有隐式类型转换(自动类型转换)和显示类型转换(强制类型转换)两种
(1)隐式类型转换
(2)显式类型转换
PHP还可以使用显式类型转换,也叫作强制类型转换。它将一个变量或值转换为另一种类型,这种转换与C语言类型的转换是相同的,只需在要转换的变量前面加上用括号括起来的目标类型即可。
在进行类型转换的过程中,应该注意以下几点:
①转换成布尔型。null、0和未赋值的变量或数组,会被转换成False,其他转换为True。
②转换成整型。布尔型的False 转换为0,True转换1;浮点型的小数部分会被舍去;字符串型如果以数字开头,就截取到非数字位,否则输出0。当字符串转换为整型或浮点型时,如果字符串是以数字开头的,则会先把数字部分转换为整型,再舍去后面的字符串;如果数字中含有小数点,则会取到小数点前一位。
③强制转换成整型还可以使用函数intval(),转换成字符串还可以使用函数strval()。
2.数据类型检测
PHP提供了很多检测数据类型的函数,可以对不同类型的数据进行检测,以判断其是否属于某个类型。