Appearance
8.5 系统常用函数
PHP提供了大量的内置函数,用于处理字符串、数组、时间等各种操作。
字符串函数
| 函数 | 描述 | 示例 |
|---|---|---|
strlen() | 计算字符串长度 | strlen("Hello") |
strtolower() | 转换为小写 | strtolower("HELLO") |
strtoupper() | 转换为大写 | strtoupper("hello") |
ucfirst() | 首字母大写 | ucfirst("hello") |
substr() | 截取字符串 | substr("Hello World", 0, 5) |
strpos() | 查找字符串位置 | strpos("Hello World", "World") |
str_replace() | 替换字符串 | str_replace("World", "PHP", "Hello World") |
trim() | 去除首尾空白 | trim(" Hello ") |
explode() | 分割字符串为数组 | explode(",", "a,b,c") |
implode() | 数组元素连接为字符串 | implode(",", ["a", "b", "c"]) |
数组函数
| 函数 | 描述 | 示例 |
|---|---|---|
count() | 计算数组长度 | count([1, 2, 3]) |
array_push() | 向数组末尾添加元素 | array_push($arr, 4) |
array_pop() | 删除并返回数组最后一个元素 | array_pop($arr) |
array_shift() | 删除并返回数组第一个元素 | array_shift($arr) |
array_unshift() | 向数组开头添加元素 | array_unshift($arr, 0) |
array_merge() | 合并数组 | array_merge([1, 2], [3, 4]) |
array_sort() | 排序数组 | sort($arr) |
array_reverse() | 反转数组 | array_reverse($arr) |
in_array() | 检查数组是否包含值 | in_array(2, $arr) |
array_key_exists() | 检查数组是否包含键 | array_key_exists("name", $arr) |
时间函数
| 函数 | 描述 | 示例 |
|---|---|---|
time() | 获取当前时间戳 | time() |
date() | 格式化日期时间 | date("Y-m-d H:i:s") |
strtotime() | 将字符串转换为时间戳 | strtotime("tomorrow") |
mktime() | 创建时间戳 | mktime(0, 0, 0, 1, 1, 2023) |
date_default_timezone_set() | 设置默认时区 | date_default_timezone_set("Asia/Shanghai") |
数学函数
| 函数 | 描述 | 示例 |
|---|---|---|
abs() | 绝对值 | abs(-5) |
sqrt() | 平方根 | sqrt(16) |
pow() | 幂运算 | pow(2, 3) |
rand() | 随机数 | rand(1, 10) |
round() | 四舍五入 | round(3.14159, 2) |
ceil() | 向上取整 | ceil(3.1) |
floor() | 向下取整 | floor(3.9) |
示例代码
php
<?php
// 字符串函数示例
echo "<h3>字符串函数</h3>";
$str = "Hello World";
echo "原始字符串: $str<br>";
echo "长度: " . strlen($str) . "<br>";
echo "小写: " . strtolower($str) . "<br>";
echo "大写: " . strtoupper($str) . "<br>";
echo "首字母大写: " . ucfirst(strtolower($str)) . "<br>";
echo "截取前5个字符: " . substr($str, 0, 5) . "<br>";
echo "'World'的位置: " . strpos($str, "World") . "<br>";
echo "替换: " . str_replace("World", "PHP", $str) . "<br>";
// 数组函数示例
echo "<h3>数组函数</h3>";
$arr = [1, 2, 3];
echo "原始数组: " . implode(", ", $arr) . "<br>";
echo "长度: " . count($arr) . "<br>";
array_push($arr, 4, 5);
echo "添加元素后: " . implode(", ", $arr) . "<br>";
$last = array_pop($arr);
echo "删除的最后一个元素: $last<br>";
echo "删除后: " . implode(", ", $arr) . "<br>";
// 时间函数示例
echo "<h3>时间函数</h3>";
date_default_timezone_set("Asia/Shanghai");
echo "当前时间戳: " . time() . "<br>";
echo "当前日期时间: " . date("Y-m-d H:i:s") . "<br>";
echo "明天此时: " . date("Y-m-d H:i:s", strtotime("tomorrow")) . "<br>";
echo "下个月今天: " . date("Y-m-d H:i:s", strtotime("+1 month")) . "<br>";
// 数学函数示例
echo "<h3>数学函数</h3>";
echo "绝对值: abs(-5) = " . abs(-5) . "<br>";
echo "平方根: sqrt(16) = " . sqrt(16) . "<br>";
echo "幂运算: pow(2, 3) = " . pow(2, 3) . "<br>";
echo "随机数: rand(1, 10) = " . rand(1, 10) . "<br>";
echo "四舍五入: round(3.14159, 2) = " . round(3.14159, 2) . "<br>";
?>注意事项
- PHP的内置函数非常丰富,可以根据需要查阅官方文档
- 不同函数的参数和返回值可能有所不同,使用前应了解其具体用法
- 一些函数可能会修改原数组,使用时要注意
- 时间函数需要注意时区设置
练习
- 使用字符串函数处理用户输入
- 使用数组函数对数组进行操作
- 使用时间函数计算两个日期之间的差值
