PHP编程第4版(KevinTatroe,PeterMacIntyre)

书: https://pan.baidu.com/s/1hMg-9fMkkzntAfHoLymQMA?pwd=2tx9
笔记如下:

  1. PHP基础语法:PHP脚本以<?php开头,?>结尾,支持变量、常量、运算符和流程控制结构(if/else/for/while)。
  2. 变量与数据类型:PHP是弱类型语言,支持整型(int)、浮点型(float)、字符串(string)、布尔型(bool)、数组(array)等。
  3. 字符串操作
  • 单引号(')不解析变量,双引号(")解析变量和转义字符。
  • 常用函数:strlen()substr()str_replace()explode()/implode()
  1. 数组类型与操作
  • 索引数组($arr = [1, 2, 3])和关联数组($arr = ['name' => 'Alice'])。
  • 函数:array_push()array_merge()array_key_exists()foreach遍历。
  1. 函数与作用域
  • 自定义函数:function sayHello($name) { ... }
  • 全局变量需用global关键字或$GLOBALS超全局数组访问。
  1. 面向对象编程(OOP)
  • 类与对象:class User { ... }$user = new User()
  • 特性:封装、继承(extends)、多态、抽象类(abstract)和接口(interface)。
  1. 错误处理
  • 错误类型:Notice、Warning、Fatal Error。
  • 异常处理:try/catch块和throw new Exception()
  1. 文件操作
  • 文件读写:file_get_contents()file_put_contents()fopen()/fclose()
  • 目录操作:scandir()mkdir()unlink()
  1. 表单处理
  • 获取表单数据:$_GET$_POST$_REQUEST
  • 安全过滤:htmlspecialchars()防止XSS,filter_var()验证输入。
  1. 会话与Cookie
    • session_start()启用会话,$_SESSION存储会话数据。
    • setcookie()设置Cookie,$_COOKIE读取Cookie。
  2. 数据库操作(PDO)
    • 连接数据库:new PDO("mysql:host=localhost;dbname=test", "user", "pass")
    • 执行SQL:$stmt = $pdo->prepare("SELECT * FROM users")$stmt->execute()
  3. MySQLi扩展
    • 面向过程:mysqli_connect()mysqli_query()
    • 面向对象:$mysqli = new mysqli()$result = $mysqli->query()
  4. JSON处理
    • json_encode()将数组/对象转为JSON字符串。
    • json_decode()将JSON字符串转为PHP对象或数组。
  5. 日期与时间
    • date("Y-m-d H:i:s")格式化日期。
    • DateTime类:$date = new DateTime()$date->format()
  6. 命名空间(Namespace)
    • 避免命名冲突:namespace MyProject;,使用use MyProject\User
  7. Composer与依赖管理
    • composer.json定义项目依赖,composer install安装包。
    • 自动加载:require 'vendor/autoload.php'
  8. RESTful API开发
    • 使用$_SERVER['REQUEST_METHOD']获取HTTP方法(GET/POST/PUT/DELETE)。
    • 返回JSON响应:header('Content-Type: application/json')
  9. 安全实践
    • 密码哈希:password_hash()password_verify()
    • CSRF防护:生成并验证Token。
  10. 性能优化
    • 使用OPcache加速脚本执行。
    • 避免重复查询数据库,使用缓存(Redis/Memcached)。
  11. 现代PHP特性
    • 类型声明:function sum(int $a, int $b): int { ... }
    • 匿名类与闭包:$func = function($x) { return $x * 2; };

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注