PHP 常用函数实用速查手册
本文汇集了 PHP 开发中不可或缺的常用函数资源,内容聚焦于日常编码最高频的场景。主要覆盖三大模块:利用 date 处理时间与格式化输出;通过 substr、str_replace 等进行精准的字符串截取与替换;以及运用 array_push、json_encode 等实现灵活的数据结构增删改查与序列化。这些基础函数的熟练运用能显著简化逻辑编写,提高 PHP 脚本的执行效率。
时间日期处理函数
在处理时间戳和显示格式时,date() 是最核心的函数。它可以根据传入的格式字符生成对应格式的日期和时间字符串。
$date = date("Y-m-d"); // 生成类似 "2023-10-01" 的年月日格式
$dateWithTime = date("Y-m-d H:i:s"); // 生成带时分秒的标准格式 "2023-10-01 12:00:00"
文件包含机制的差异
在引入外部文件时,需根据对错误的容忍度选择加载方式,这直接影响程序的容错能力:
require("file.php"):在脚本开始执行前读取文件。如果文件不存在或发生错误,会导致致命的 fatal error,程序中断。include("file.php"):仅在代码执行到该行时才读取文件。如果出错,只会抛出警告(warning),但程序会继续执行后续逻辑。
常用字符串处理函数
字符串处理是 PHP 的基础场景,以下是各类高频操作的实例说明:
第1步:获取长度与连接拼接
使用 strlen 统计包含空格在内的字符总数;使用 implode 将数组元素用指定分隔符连接成新字符串。
// 计算字符串长度,空格也算一个字符
$str = " sdaf sd ";
$len = strlen($str);
// 使用分隔符连接数组元素,结果为 "a-b-c"
$concatenatedStr = implode("-", array("a", "b", "c"));
第2步:分割、修剪与截取子串
利用 explode 按字符切分字符串,或用 ltrim/rtrim/trim 清理首尾空白及特定字符,substr 则负责提取子串。
// 从左侧开始切割字符串,限制返回数组长度为4个元素
$parts = explode("a", "asddad addsadassd dasdadfsdfasdaaa", 4);
// 剔除左侧以 "a" 开头的字符
$trimmedLeft = ltrim("a asd ", "a");
// 剔除左右两侧的空格
$trimmedBoth = trim(" sdsdfas ");
// 从索引 0 开始截取 4 个字符
$subString = substr("abcdefgh", 0, 4); // 结果: abcd
第3步:替换、大小写转换与 HTML 转义
当需要批量替换文本或调整显示状态时,可使用相关函数。特别注意 htmlentities 对特殊标签的原始化输出需求。
// 将字符串中的 'a' 全部替换为空,区分大小写
$replaced = str_replace("a", "", "abcabcAbca");
// 将首字母变为大写
$titleCase = ucfirst("asdf");
// 将 HTML 特殊字符转换为实体,例如 <br/> 会被原样打印
$safeHtml = htmlentities("<br/>");
第4步:定位字符位置与添加转义符
查找功能依赖 strpos/strrpos 定位首次或最后一次出现的位置;addcslashes 用于在指定字符前增加反斜杠转义。
// 获取子串首次出现的索引位置,首个字符索引为 0
$index = strpos("asagaab", "ab");
// 获取子串最后一次出现的索引位置
$lastIndex = strrpos("asagaabadfab", "ab");
// 在 'a', 'k', 'd' 这三个字符前添加反斜杠
$escapedStr = addcslashes("abcdefghijklmn", "akd");
第5步:格式化数字
处理金额或数值展示时,number_format 提供了强大的千位分隔和小数保留功能。
// 保留两位小数,小数点替换为 'd',千位间隔替换为 'a'
$formatted = number_format(1231233.1415, 2, "d", "a");
常用数组操作方法
数组是 PHP 的灵魂,掌握其内置函数的指针移动和数据重组技巧至关重要。
第1步:判断元素存在性与类型查询
检查数组内是否有某值 in_array,或是否有某键 array_key_exists。
$arr = array("k0" => "a", "k1" => "b", "k2" => "c");
// 判断数组是否包含元素值 'b'
$isContains = in_array("b", $arr);
// 判断数组是否包含键名 'k1'
$hasKey = array_key_exists("k1", $arr);
// 获取当前数组的长度
$count = count($arr);
第2步:数组指针的移动与取值
PHP 数组有一个内部指针指向当前元素。通过一系列函数控制指针流转以实现迭代或随机访问。
// 重置指针指向第一个元素并获取该值
$firstVal = reset($arr);
// 移动指针到下一个元素并获取值
$nextVal = next($arr);
// 移动指针到上一个元素并获取值
$prevVal = prev($arr);
// 获取当前指针指向元素的键名
$currentKey = key($arr);
// 获取当前指针指向元素的值
$currentValue = current($arr);
// 同时返回键和值组成的关联数组,并移动指针
$kvArray = each($arr);
// 指向最后一个元素并获取值
$lastVal = end($arr);
第3步:尾部与头部的增删操作
利用栈(LIFO)或队列(FIFO)的特性进行高效数据进出。
// 在末尾追加一个或多个元素,返回新长度
$newLength = array_push($arr, "d", "extra");
// 在头部插入一个或多个元素
$insertedLength = array_unshift($arr, "t1", "t2");
// 弹出(移除并返回)末尾的一个元素
$poppedVal = array_pop($arr);
// 移出(移除并返回)头部的一个元素
$shiftedVal = array_shift($arr);
第4步:排序、合并与切片
对数据进行结构化整理。
// 按键值的 ASCII 码升序重排,并重新索引
sort($arr);
// 按值降序排列
rsort($arr);
// 合并两个或多个数组
$merged = array_merge($arr, array("x", "y"));
// 截取数组:从索引2开始取1个长度的元素
$sliced = array_slice($arr, 2, 1);
第5步:其他高级重组工具
包括去重、填充、范围生成及数据块划分。
// 去除数组中重复的值,不改变顺序
$uniqueArr = array_unique($arr);
// 生成一个范围数组,例如从3开始每次加2直到9
$ranged = range(3, 9, 2);
// 将数组分成大小为2的小数组块
$chunked = array_chunk(array("a","b","c","d"), 2);
// 将数组中的所有可计算数值相加
$total = array_sum(array("a", 2, "cssf"));
JSON 数据序列化与反序列化
在前后端交互或配置存储中,数组与 JSON 字符串的互转极为常见。
$myArray = array('k1' => 'val1', 'k2' => 'val2');
// 将 PHP 数组转换为 JSON 字符串
$jsonString = json_encode($myArray);
echo $jsonString; // 输出: {"k1":"val1","k2":"val2"}
// 将 JSON 字符串解码回 PHP 对象,并强制转换为数组以便遍历
$resultArray = (array)json_decode($jsonString);
var_dump($resultArray);
以上就是 PHP 常用函数的详细内容,更多关于 PHP 开发基础与数据处理的资料请关注本站其它相关文章!免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









