在Web开发领域,PHP因免费开源、语法简单属于类C风格语言,具有良好的跨平台性而受到广大业内人士的支持。经过多个预发布版本, PHP 5.0在2004年7月13日发布。该版本使用Zend引擎Ⅱ,并且加入了新功能,完全支持面向对象。2015年12月3日,PHP 7.0.0 GA发布,性能较PHP 5.6提升了两倍,新增了一些操作符和函数的返回类型声明,也增加了对匿名类的支持等。关于PHP 7的讨论在网上也逐渐展开。不过到目前为止,国内有关专门介绍PHP 7应用开发的书籍还很少,本书的目的就是对现有的PHP 7技术进行一个汇总,书中内容是笔者在PHP 7学习和实际工作项目中的心得体会和系统总结,希望能够帮助PHP 7学习者更好地了解其新特性,并应用于实际开发中。
当下许多互联网网站和系统都是使用PHP开发的,使得PHP编程语言越来越热门。本书全面介绍PHP的有关知识,以及许多PHP 7的新特性。读者可以通过本书对网站开发有一个系统性的学习,值得一阅。 ——将至发展创始人 李 明
2015年6月,官方发布了PHP 7。与以往版本不同的是,PHP 7优化了底层架构,使得PHP的执行效率提升了一倍左右,还增加了一些PHP的新特性。本书是作者深入研究、总结PHP开发经验的一大力作,力图为读者呈现一个PHP的知识体系全貌。通过对本书的学习,相信读者一定能受益匪浅。 ——瓢城Web俱乐部创始人/国内PHP教学专家 李炎恢
此书自有黄金屋,此书自有颜如玉。陈小龙的这本《PHP 7实践指南》深入讲解PHP的每个知识点,由点及面,为读者呈现一个完整的PHP知识结构。讲解细致全面,可以说是面面俱到,希望这本书能成为广大PHP爱好者的常备书。 ——奇虎360高级软件工程师 宋小平
这是对PHP技术做了全面总结的一本书,书中涉及网站技术开发的方方面面。与其他类似书籍不同的是,本书作者在编写时去旧迎新,抛弃了许多过时的内容,增加了许多新鲜的东西,并通过案例详解为读者带来不一样的学习体验。本书一定能让读者学有所获。 ——前阿里巴巴技术专家/爱写歌CEO 张文铂
目 录
第1章 走进PHP的世界 1
1.1 快速认识PHP 2
1.1.1 PHP语言的的优势 2
1.1.2 PHP的运行机制和原理 3
1.1.3 关于PHP 7 5
1.2 HTML和CSS 6
1.2.1 HTML元素 6
1.2.2 HTML常用标签 7
1.2.3 CSS语法 11
1.2.4 CSS选择器 12
1.2.5 CSS样式 14
1.2.6 CSS 框模型 16
1.3 JavaScript简介 18
1.3.1 JavaScript数据类型 18
1.3.2 JavaScript基本语句 21
1.3.3 JavaScript函数和事件 26
1.3.4 常用的JavaScript框架和库 29
1.4 PHP开发环境搭建 30
1.5 代码编辑器 31
1.6 编写*个PHP程序 32
第2章 PHP语言基础 33
2.1 PHP的数据类型 34
2.2 运算符 37
2.3 变量 42
2.4 常量 45
2.4.1 常量的声明 45
2.4.2 预定义常量 46
第3章 流程控制语句 48
3.1 条件控制语句 49
3.1.1 if条件控制语句 49
3.1.2 switch分支语句 50
3.2 循环控制语句 51
3.2.1 while循环 51
3.2.2 do while循环 52
3.2.3 for循环 53
3.2.4 foreach循环 54
3.3 跳转语句 56
3.3.1 break语句 56
3.3.2 continue语句 56
3.3.3 goto语句 56
3.4 包含语句 57
3.4.1 include语句 57
3.4.2 include_once 语句 59
3.4.3 require语句 60
3.4.4 require_once语句 60
第4章 函数 61
4.1 函数的使用 62
4.2 函数的参数 62
4.2.1 参数传递方式 62
4.2.2 参数类型声明 64
4.2.3 可变参数数量 66
4.3 函数返回值 67
4.4 可变函数 68
4.5 内置函数 69
4.6 匿名函数 69
4.7 递归与迭代 71
第5章 字符串 73
5.1 单引号和双引号的区别 74
5.2 字符串连接符 74
5.3 字符串操作 75
5.3.1 改变字符串大小写 75
5.3.2 查找字符串 75
5.3.3 替换字符串 78
5.3.4 截取字符串 79
5.3.5 去除字符串首尾空格和特殊字符 79
5.3.6 计算字符串的长度 80
5.3.7 转义和还原字符串 80
5.3.8 重复一个字符串 81
5.3.9 随机打乱字符串 82
5.3.10 分割字符串 82
第6章 数组 83
6.1 使用数组 84
6.1.1 数组类型 84
6.1.2 创建数组 85
6.2 二维数组和多维数组 87
6.2.1 二维数组 87
6.2.2 多维数组 87
6.3 数组操作 88
6.3.1 检查数组中是否存在某个值 88
6.3.2 数组转换为字符串 88
6.3.3 计算数组中的单元数目 89
6.3.4 数组当前单元和数组指针 89
6.3.5 数组中的键名和值 90
6.3.6 填补数组 93
6.3.7 从数组中随机取出一个或多个单元 97
6.3.8 数组排序与打乱数组 97
6.3.9 遍历数组 100
6.3.10 数组的拆分与合并 104
6.3.11 增加/删除数组中的元素 106
6.3.12 其他常用数组函数 108
6.4 系统预定义数组 112
6.4.1 $_SERVER 112
6.4.2 $_GET和$_POST数组 114
6.4.3 $_FILES数组 115
6.4.4 $_SESSION和$_COOKIE数组 116
6.4.5 $_REQUEST[]数组 116
第7章 时间与日期 117
7.1 设置时区 118
7.1.1 在配置文件中设置 118
7.1.2 通过date_default_timezone_set函数在文件中设置 118
7.2 获取当前时间 118
7.3 常用时间处理方法 121
7.3.1 格式化时间显示 121
7.3.2 计算两个日期间的时间差 124
7.3.3 从字符串中解析日期时间 124
7.3.4 日期的加减运算 125
7.4 验证日期 125
第8章 表单 127
8.1 表单的种类 128
8.1.1 文本域及其类型 128
8.1.2 其他表单类型 131
8.2 get和post方法 133
8.2.1 获取表单值 134
8.2.2 处理上传文件 134
第9章 类与对象 137
9.1 什么是类 138
9.1.1 声明一个类 138
9.1.2 实例化一个类 139
9.1.3 访问类中成员 139
9.1.4 静态属性和静态方法 141
9.1.5 构造方法和析构方法 142
9.2 封装和继承特性 143
9.2.1 封装特性 144
9.2.2 继承特性 145
9.2.3 通过继承实现多态 146
9.3 魔术方法 147
9.3.1 __set()和__get()方法 147
9.3.2 __isset()和__unset()方法 148
9.3.3 __call() 和__ toString() 方法 150
9.4 自动加载 151
9.4.1 __autoload() 方法 151
9.4.2 spl_autoload_register() 函数 152
9.5 抽象类和接口 153
9.5.1 抽象类 153
9.5.2 接口 154
9.6 类中的关键字 156
9.6.1 final关键字 157
9.6.2 clone 关键字 157
9.6.3 instanceof 关键字 158
9.6.4 “==”和“===” 159
第10章 正则表达式 160
10.1 正则表达式的用途 161
10.2 正则表达式的语法 161
10.2.1 正则表达式中的元素 161
10.2.2 替换和子表达式 165
10.2.3 反向引用 166
10.3 在PHP中使用正则表达式 167
10.3.1 匹配与查找 167
10.3.2 搜索与替换 171
10.3.3 分割与转义 173
第11章 错误异常处理 175
11.1 异常处理 176
11.1.1 异常类 176
11.1.2 创建自己的异常类 178
11.2 错误有关配置 179
11.2.1 错误级别配置 179
11.2.2 记录错误 180
11.2.3 自定义错误处理函数 181
11.3 PHP 7中的错误处理 182
第12章 图像处理 184
12.1 获取图像信息 185
12.2 图像绘制 187
12.2.1 创建画布 187
12.2.2 定义颜色 188
12.2.3 绘制图形 190
12.2.4 绘制文字 193
12.3
评论晒单