2015年6月发布了PHP 7 Alpha 1版本,同年12月3日发布了GA版本,PHP 7的发布对于PHP来说具有里程碑的意义。在性能上,PHP 7的执行效率是原来PHP 5的两倍左右。PHP 7的底层架构改变了存储各种变量的Zval和Zend_String结构体,优化了Zend_Array的HashTable等,这些底层架构的改进大幅度提升了PHP的执行效率。
本书的目的是帮助读者快速学习和掌握PHP 7,从最基础的PHP开发环境的搭建开始,逐渐深入到PHP的相关特性和Redis及MySQL等的使用,特别是介绍了ThinkPHP、常见的设计模式、MVC设计思想等,最后还介绍了基本前端架构打造服务端、App后台开发、框架编程等较流行的开发案例,以帮助读者学以致用,真正开启PHP开发之旅。
本书结构
本书共分24章,各章内容说明如下:
第1章为走进PHP的世界,介绍PHP的运行机制和PHP 7的新特性,学习搭建PHP的开发环境,并编写第一个PHP程序。
第2章介绍PHP的语言基础,包括PHP的数据类型、变量、常量和运算符的知识。
第3章讲解PHP中的流程控制语句,介绍foreach语句在PHP 7和以往版本中的不同。
第4章介绍函数的使用,包括函数参数的传递方式、可变函数和匿名函数等,与PHP 5不同的是,PHP 7中新增了支持参数类型的声明和函数返回值类型的声明。
第5章详细介绍PHP中的字符串,并着重讲解编程中经常会用到的一些字符串处理函数。
第6章讲解PHP数组有关的内容,和字符串一样,数组也是我们在编程中经常用到的。
第7章讲解PHP中的时间与日期函数,包括如何设置和获取时间、如何计算两个日期的时间差等。
第8章介绍表单。PHP作为一种动态语言,经常需要收集前端用户传过来的数据,然后与数据库交互,表单是用户填写数据、发起与数据库交互的第一步。
第9章是类与对象,介绍什么是类及类的使用。学会使用类封装一些方法,具备面向对象编程的思想,是开发大型网站必不可少的基本功。
第10章介绍正则表达式有关的内容。几乎所有的编程语言都支持正则表达式,本章讲解正则表达式的基本内容以及如何在PHP中使用正则表达式。
第11章介绍PHP中的错误异常处理。PHP 7中增加了错误处理,增加了一个Error类。
第12章介绍如何使用PHP处理图像,如获取图像信息、拷贝旋转图像、给图像加水印等。
第13章是目录文件操作。PHP有着强大的目录文件操作函数,可以使用它们创建、修改、读取文件,还可以改变文件的属性等,另外还介绍了与文件上传有关的配置。
第14章详细讲解Cookie和Session,介绍它们的基本概念和设置,通过实际的案例说明它们的工作原理和存储机制。
第15章介绍MySQL数据库的使用。这一章介绍数据库的安装和MySQL的一些基本操作,以及如何使用PHP与MySQL交互。本章在编写的时候摒弃了PHP 5版本中与MySQL连接的MySQL扩展,转而重点介绍PHP如何使用MySQLi和PDO与数据库交互。
第16章介绍Redis的使用,介绍Redis的5种数据类型,并讲解如何使用PHP操作Redis。
第17章是PHP处理XML和JSON,介绍几种创建与读取XML的方式,以及PHP中json_encode()和json_decode()函数的使用。
第18章介绍MVC思想和国内流行的ThinkPHP框架,本章介绍的是ThinkPHP的最新版本,和以往的版本有许多不同,读者在阅读时需注意。
第19章介绍编程中几种常用的设计模式,包括工厂模式、单例模式、观察者模式和策略模式。
第20章是基于前端架构打造服务端,介绍如何使用API接口与前端交互,传输消息的加解密,另外还介绍了前端开发中常用的模板MustacheJS和AngularJS。
第21章从零开始讲述一个O2O网站的开发流程,从需求分析到数据库设计,再到最后的编码实现,以及如何应用支付模块等。
第22章介绍当今比较流行的混合式App的开发框架,以及如何开发接口程序、如何定义路由等。
第23章讲解如何自己动手实现一个PHP开发框架,介绍框架的开发思想和流程,以及框架的基本概念和基础结构。自己实现一个框架对于理解框架的运行原理有很好的促进作用。
第24章讲述目前大型网站中常用的技术栈,通过这一章的学习,读者可以开阔眼界,对大型复杂的网站系统有更好的了解。
读者对象
? PHP初学者
? 想了解PHP 7新特性的读者
? 想进阶的PHP程序员
? 开设相关课程的大专院校学生
? 公司内部培训的学员
技术支持
在编写本书的过程中,笔者一直努力为读者呈现完整的知识体系结构,但由于本人水平和开发经验有限,书中难免存在不足之处,还望广大读者指正。如果对书中的内容有建议或疑惑,可通过笔者的微信公众号、邮箱或书友群与笔者联系,笔者一定会尽量解答。
微信公众号:chenxiaolong19941024
邮箱:
[email protected]
书友群:201463512
本书配套的素材文件下载地址(注意区分数字和字母大小写)如下:
https://github.com/chenxiaolong1994/php7book
如果下载有问题,请发邮件到电子邮箱
[email protected]获得帮助,邮件标题为“PHP 7从零基础到项目实战下载资源”。
致谢
首先,感谢PHP之父Rasmus Lerdorf,是他创建了这个优秀的编程语言,今天我们在互联网上浏览的网页有许多都是使用PHP编写的。同时希望越来越多的朋友加入到PHP的学习和开发中来,共同将这一优秀的编程语言发扬光大。
其次,感谢王金柱编辑的大力支持,他在本书的编辑和出版过程中付出了很多心血,此书得以与读者见面,离不开他的辛勤工作。
最后,还要感谢家人和朋友的支持,写作本书需要耗费许多时间,使得我不能经常陪伴家人和朋友。
陈小龙
2018年5月于北京