PHP标准库:完全指南
PHP是Web开发中最流行的语言之一,其强大之处很大程度上归功于丰富的标准库(Standard PHP Library, SPL)。与许多语言的标准库仅包含基础工具不同,PHP的标准库包含了数百个现成的函数和类,几乎覆盖了后端开发者的所有需求。本文将全面介绍PHP标准库的关键组件,并提供代码示例和实践建议。
1. 数组操作(Array Functions)
数组是PHP的基础。标准库提供了数十个用于处理数组的函数:
array_map()— 对数组每个元素应用回调函数array_filter()— 根据条件过滤数组元素array_reduce()— 将数组缩减为单个值array_merge()— 合并多个数组array_diff()和array_intersect()— 数组比较
<?php$numbers = [1, 2, 3, 4, 5];$squared = array_map(fn($n) => $n * $n, $numbers);$even = array_filter($numbers, fn($n) => $n % 2 === 0);$sum = array_reduce($numbers, fn($carry, $n) => $carry + $n, 0);print_r($squared); // [1, 4, 9, 16, 25]print_r($even); // [2, 4]echo $sum; // 15?>2. 字符串函数(String Functions)
PHP提供了强大的字符串处理工具集:
strlen(),strpos(),substr()— 基本操作str_replace(),preg_replace()— 子串替换explode()和implode()— 分割/连接trim(),htmlspecialchars()— 数据清理
<?php$text = " Hello, PHP World! ";$clean = trim($text);$parts = explode(", ", $clean);echo $parts[0]; // Helloecho str_replace("World", "Universe", $clean); // Hello, PHP Universe!?>3. 日期和时间处理(DateTime)
DateTime类及其派生类已完全取代了旧的date()函数:
DateTime::createFromFormat()— 解析字符串DateInterval— 处理时间间隔DatePeriod— 日期范围迭代
<?php$now = new DateTime('now');$birthday = new DateTime('2025-05-15');$interval = $now->diff($birthday);echo $interval->days . " 天到生日";?>4. 文件系统(Filesystem Functions)
PHP标准库提供了完整的文件和目录操作工具:
file_get_contents(),file_put_contents()— 快速读写fopen(),fwrite(),fclose()— 底层操作scandir(),mkdir(),unlink()— 目录管理is_file(),is_dir(),file_exists()— 检查操作
<?php$content = file_get_contents('data.txt');file_put_contents('backup.txt', $content);$files = array_diff(scandir('./uploads'), ['.', '..']);?>5. 数据库操作(PDO - PHP Data Objects)
PDO是一个用于操作多种数据库(MySQL, PostgreSQL, SQLite)的统一接口:
- 预处理语句(prepared statements) — 防止SQL注入
- 支持commit/rollback的事务处理
- 不同数据库的统一API
<?php$pdo = new PDO('mysql:host=localhost;dbname=test', 'user', 'pass');$stmt = $pdo->