作品简介

曾经我与你一般,年少时期,对人生只知努力,却不知何往,只得上下求索,东寻西觅。于是求知识、读文字、写代码、做架构,时至而立之年方初识端倪。几年来亲历创业,一路走来有技术的积累,亦有技术外的磨砺。比照更多的同路者,做自己最擅长的才更有力量。

当今社会,如你我这样依靠技术成就理想的开发者,共同特征是吃苦耐劳,也有一些完美主义。我们在互联网上获取大量知识,而上面的信息多数可受其益,但陈旧错漏之文仍有,条理逻辑亦差强人意,难免蒙受其弊。因此,纸质图书阅读对于开发者来说仍有必要。

作品目录

  • 前言
  • 第1章 PHP解惑
  • 1.1 省略结束标签的便利性
  • 1.2 emtpy、isset、is_null的区别
  • 1.3 布尔值的正确打开方式
  • 1.4 变量作用域实践
  • 1.5 多维数组排序
  • 1.6 超级全局数组
  • 1.7 global关键字与global数组的区别
  • 1.8 活用静态变量
  • 1.9 require、require_once、include、include_once与autoload
  • 1.10 =与==、===的区别
  • 1.11 HereDoc与NowDoc
  • 1.12 函数传值与引用
  • 1.12.1 传值
  • 1.12.2 引用
  • 1.13 避免使用过多参数
  • 1.13.1 使用数组
  • 1.13.2 使用对象
  • 1.14 匿名函数
  • 1.15 return与exit
  • 1.16 is_callable()与method_exists()函数
  • 1.17 执行外部程序
  • 1.18 安全模式的使用说明
  • 1.19 提前计算循环长度
  • 1.20 SQL组合优化
  • 1.21 文件处理
  • 1.22 goto语句:最后的手段
  • 1.23 利用phar扩展来节省空间
  • 1.24 手册上的小瑕疵
  • 1.25 本章小结
  • 第2章 深入PHP面向对象
  • 2.1 PHP与面向对象
  • 2.2 面向对象的一些概念
  • 2.3 类和对象
  • 2.4 使用对象
  • 2.5 构造方法与析构方法
  • 2.6 实例与多态
  • 2.7 类的扩展
  • 2.8 防止重写
  • 2.9 防止被扩展
  • 2.10 多态性
  • 2.11 接口
  • 2.12 抽象类
  • 2.13 静态方法和属性
  • 2.14 魔术方法
  • 2.15 命名空间
  • 2.16 traits
  • 2.17 本章小结
  • 第3章 PHP输出缓冲区
  • 3.1 系统缓冲区
  • 3.2 什么是PHP输出缓冲区
  • 3.2.1 默认PHP输出缓冲区
  • 3.2.2 消息头和消息体
  • 3.2.3 用户输出缓冲区
  • 3.3 输出缓冲区的机制
  • 3.4 输出缓冲区的陷阱
  • 3.5 输出缓冲区实践
  • 3.6 输出缓冲与静态页面
  • 3.7 内容压缩输出
  • 3.8 本章小结
  • 第4章 PHP缓存技术
  • 4.1 关于缓存
  • 4.2 文件缓存与静态页面
  • 4.3 页面静态化
  • 4.4 数据级别缓存
  • 4.5 OpCode缓存
  • 4.6 OpCode缓存管理工具
  • 4.6.1 使用APC
  • 4.6.2 eAccelerator的安装配置
  • 4.6.3 XCache的安装配置
  • 4.6.4 使用XCache缓存
  • 4.6.5 APC、eAccelerator和XCache三者的比较
  • 4.6.6 用户级别缓存
  • 4.7 使用deflate压缩页面
  • 4.8 内存数据库
  • 4.8.1 关于memcached
  • 4.8.2 memcached架构
  • 4.8.3 memcached特性
  • 4.8.4 memcached缓存策略
  • 4.8.5 memcached安装与配置
  • 4.8.6 使用memcached做分布式Session
  • 4.8.7 两个memcached扩展
  • 4.8.8 安装pecl::memcache扩展
  • 4.8.9 memcached数据存取方法
  • 4.9 缓存的陷阱
  • 4.10 本章小结
  • 第5章 PHP网络编程
  • 5.1 Socket编程
  • 5.1.1 Socket原理
  • 5.1.2 Socket函数
  • 5.1.3 PECL Socket函数库
  • 5.1.4 PHP的Socket源码解析
  • 5.1.5 创建TCP Socket客户端
  • 5.1.6 创建TCP Socket服务器
  • 5.1.7 创建UDP服务器
  • 5.1.8 字符流与Socket
  • 5.1.9 连接SMTP服务器
  • 5.2 cURL核心技术
  • 5.2.1 什么是cURL
  • 5.2.2 安装和启用cURL
  • 5.2.3 建立cURL的步骤
  • 5.2.4 PHP cURL选项
  • 5.2.5 cURL实践
  • 5.3 本章小结
  • 第6章 PHP调优、测试与工具
  • 6.1 PHP调试
  • 6.2 语法检查
  • 6.3 输出调试信息
  • 6.3.1 使用内部函数调试
  • 6.3.2 建立堆栈跟踪
  • 6.4 活用日志
  • 6.5 Xdebug
  • 6.5.1 安装Xdebug
  • 6.5.2 应用Xdebug
  • 6.5.3 Xdebug带来的增益
  • 6.6 本章小结
  • 第7章 用户验证策略
  • 7.1 数据库设计
  • 7.2 HTTP验证
  • 7.2.1 用户名主机名验证
  • 7.2.2 HTTP的身份验证机制
  • 7.2.3 HTTP基本验证
  • 7.2.4 摘要访问验证
  • 7.3 纯PHP验证
  • 7.3.1 自定义Session
  • 7.3.2 构造安全的Cookie
  • 7.4 访问控制列表
  • 7.5 本章小结
  • 第8章 深度理解MySQL驱动与存储引擎
  • 8.1 MySQL连接驱动库
  • 8.2 mysqlnd驱动
  • 8.3 存储引擎
  • 8.3.1 取得存储引擎信息
  • 8.3.2 定义存储引擎
  • 8.3.3 内置的存储引擎
  • 8.4 第三方存储引擎
  • 8.5 结合硬件的引擎
  • 8.6 MySQL替代品与分支
  • 8.7 本章小结
  • 第9章 PHP命令行界面
  • 9.1 CLI简述
  • 9.1.1 CLI的测试安装
  • 9.1.2 CLI的配置参数
  • 9.2 CLI命令行接口
  • 9.3 CLI命令选项
  • 9.4 CLI开发实践
  • 9.5 CLI实际应用
  • 9.6 内置服务器
  • 9.7 本章小结
  • 第10章 代码重构实践
  • 10.1 什么是不良代码
  • 10.2 什么是好代码
  • 10.3 如何增加代码可读性
  • 10.3.1 命名方式
  • 10.3.2 表达式
  • 10.3.3 代码段
  • 10.4 可扩展性与效率重构
  • 10.5 模块化设计
  • 10.6 封装与解耦
  • 10.7 代码效率
  • 10.7.1 网络带宽的效率
  • 10.7.2 内存效率低
  • 10.7.3 程序处理效率低下
  • 10.8 本章小结
展开全部