新書推薦:

《
流浪的君子:孔子的最后二十年 王健文
》
售價:NT$
254.0

《
美国黑室(全译本 图文珍藏版)
》
售價:NT$
356.0

《
咨询的奥秘2:咨询师的百宝箱(珍藏版)
》
售價:NT$
356.0

《
中国近代思想与学术的系谱(增订版)
》
售價:NT$
500.0

《
失权者(三联生活周刊文丛)
》
售價:NT$
352.0

《
张元济的生平与事业:从清代改革家到二十世纪出版家
》
售價:NT$
398.0

《
他者中的近代朝鲜(西方韩国研究丛书)
》
售價:NT$
398.0

《
索恩丛书·苏莱曼大帝的崛起:奥斯曼宫廷与16世纪的地中海世界
》
售價:NT$
403.0
|
編輯推薦: |
编辑推荐
如果你是一名PHP开发人员,正在为常见问题寻找行之有效的解决方法,那就阅读这本经典实例吧,它能够帮助你解决各种编程问题。PHP是一门极易使用的语言,这就是现今超过75%的在线网站使用它的原因。但是,PHP对编程错误的宽容程度令人难以置信,从而导致有问题的代码一再被重复使用。
本书作者结合新版PHP,提供了自成一体的经典实例,为你解决日常工作中遇到的各种问题。无论你是什么层次的开发人员,都可以遵循本书提供的既定模式和示例,使用PHP解决一些常见问题。参考书中的经典实例,你可以快速识别和解决复杂的问题,不必重新发明轮子。
专家推荐
“Eric把他在PHP社区中积累的丰富经验汇集到这本书中,通俗易懂。强烈推荐给新老PHP开发人员!”
——Steve Grunwell
Mailchimp资深软件工程师
|
內容簡介: |
本书作者结合新版PHP,提供了自成一体的经典实例,为你解决日常工作中遇到的各种问题。无论你是什么层次的开发人员,都可以遵循本书提供的既定模式和示例,使用PHP解决一些常见问题。参考书中的经典实例,你可以快速识别和解决复杂的问题,不必重新发明轮子。这本实用指南将帮助你:利用函数和对象高效构建应用。探索现代PHP的类型系统。了解加密、错误处理、调试和性能调优等关键概念。审视PHP包和扩展生态系统。学习如何构建基本的Web和命令行应用。安全处理设备中的加密文件和纯文本文件。
|
關於作者: |
Eric A. Mann,从事软件工程师工作近二十年。他曾为早期创业公司和财富500强企业构建可伸缩的项目。
|
目錄:
|
目录
前言 1
第1 章 变量 7
11 定义常量9
12 创建可变变量 11
13 就地交换变量 13
第2 章 运算符 17
21 使用三元运算符代替if-else 块 21
22 合并潜在的空值 24
23 比较恒等值 25
24 使用飞船运算符对值进行排序 28
25 使用运算符抑制诊断错误 30
26 比较整数中的位 31
第3 章 函数 37
31 访问函数的参数 40
32 为函数的参数设置默认值 42
33 使用具名参数 44
34 规定函数参数和返回值类型 46
35 定义接受可变数量参数的函数 50
36 返回多个值 52
37 在函数内访问全局变量 54
38 在一个函数的多次调用之间管理状态 58
39 定义动态函数 61
310 把函数作为参数传递给其他函数 62
311 使用简洁的函数定义(箭头函数) 65
312 创建没有返回值的函数 68
313 创建不返回的函数 70
第4 章 字符串 73
41 访问长字符串中的子字符串 76
42 从一个字符串中提取另一个字符串78
43 替换字符串的一部分 80
44 一次处理字符串的一个字节 83
45 生成随机字符串 86
46 在字符串中内插变量 87
47 把多个字符串拼接起来 89
48 管理存储在字符串中的二进制数据92
第5 章 数字 97
51 验证变量中的数字 98
52 比较浮点数 100
53 舍入浮点数 102
54 生成真正的随机数 105
55 生成可预测的随机数 106
56 生成加权随机数 109
57 计算对数 112
58 计算指数 113
59 把数字格式化为字符串 114
510 处理非常大或非常小的数字 115
511 在不同的进制之间转换数字 118
第6 章 日期和时间 121
61 获取当前日期和时间 122
62 格式化日期和时间 124
63 把日期和时间转换为UNIX 时间戳 128
64 从UNIX 时间戳中提取日期和时间信息 130
65 计算两个日期之间的差异 131
66 从任意字符串中解析日期和时间 133
67 验证日期137
68 增加或减去日期 138
69 跨时区计算时间 142
第7 章 数组 145
71 为数组中的一个键关联多个元素 147
72 用一定范围内的数字初始化数组 150
73 迭代数组中的项 152
74 从关联数组和数字数组中删除元素154
75 改变数组的大小 158
76 把一个数组追加到另一个数组中 161
77 根据现有数组的片段创建数组 164
78 数组和字符串之间的转换 168
79 反转数组171
710 对数组进行排序 173
711 基于函数对数组进行排序 176
712 随机排列数组中的元素 178
713 把一个函数应用于数组的每个元素上 179
714 把数组归约为单个值 182
715 迭代无限大或非常大(特别耗资源)的数组 184
第8 章 类和对象 189
81 由自定义的类实例化对象 197
82 使用定义的默认值构造对象 199
83 在类中定义只读属性 201
84 析构用不到的对象 204
85 使用魔术方法提供动态属性 207
86 扩展类以定义附加功能 209
87 强制类表现出特定的行为 212
88 创建抽象基类 217
89 防止更改类和方法 219
810 克隆对象 224
811 定义静态属性和方法 228
812 内省对象的私有属性或方法 231
813 在类之间重用代码 233
第9 章 安全和加密 239
91 过滤、验证和净化用户输入 246
92 把敏感凭证放在应用代码外部 251
93 散列和验证密码 253
94 加密和解密数据 257
95 把加密数据存入文件 263
96 加密签名发送给其他应用的消息 268
97 验证加密签名 270
第10 章 文件处理 273
101 创建或打开本地文件 274
102 把文件读入字符串 276
103 读取文件的特定片段 278
104 就地修改文件 279
105 同时写入多个文件 281
106 锁定文件,防止其他进程访问或修改 283
第11 章 流 287
111 把数据流式写入临时文件和从临时文件中流式读取数据 292
112 读取PHP 输入流 294
113 写入PHP 输出流 297
114 从一个流中读取,写入另一个流 300
115 把不同的流处理程序组合在一起 302
116 自定义流包装器 306
第12 章 错误处理 311
121 查找并修复解析错误 311
122 创建和处理自定义异常 313
123 隐藏错误消息,不让终端用户看到 316
124 使用自定义错误处理程序319
125 把错误记录到外部流 321
第13 章 调试和测试 323
131 使用调试器扩展 325
132 编写单元测试 327
133 自动化单元测试 333
134 静态代码分析 336
135 记录调试信息 338
136 将变量内容转储为字符串342
137 使用内置Web 服务器快速运行应用 346
138 使用单元测试通过git-bisect 检测版本控制项目中的回归 348
第14 章 性能调优 355
141 计算函数的执行时间 358
142 对应用的性能进行基准测试 363
143 缓存操作码,提升应用速度 370
第15 章 包和扩展 375
151 定义Composer 项目 378
152 寻找Composer 包 381
153 安装和更新Composer 包 383
154 安装PHP 原生扩展 387
第16 章 数据库 389
161 关系数据库 389
162 键值存储器 390
163 图数据库 391
164 文档数据库 392
165 连接SQLite 数据库 392
166 使用PDO 连接外部数据库提供程序 395
167 净化数据库查询中的用户输入 399
168 模拟数据库集成测试的数据 402
169 使用Eloquent ORM 查询SQL 数据库 408
第17 章 PHP 异步编程 413
171 异步从远程API 获取数据 419
172 等待多个异步操作的结果421
173 中断一个操作,执行另一个操作 423
174 在单独的线程中运行代码427
175 在线程之间收发消息 432
176 使用Fiber 管理流内容 437
第18 章 PHP 命令行 441
181 解析程序参数 442
182 读取交互式用户输入 446
183 为控制台输出着色 447
184 使用Symfony Console 创建命令行应用 449
185 使用PHP 原生的REPL 453
|
|