PHP 字符串处理函数
PHP 字符串处理函数
字符串处理是 PHP 最常用的操作,这些函数一定要会。
1. 截取字符串
// 截取前n个字符
substr("hello world", 0, 5); // hello
// 中文截取(用mb_substr)
mb_substr("你好世界", 0, 2, "utf-8"); // 你好
2. 替换字符串
// str_replace 替换
str_replace("world", "PHP", "hello world"); // hello PHP
// 只替换第一次出现
str_replace("a", "b", "aaa", $count);
3. 查找字符串
// 查找位置(找不到返回false)
strpos("hello world", "world"); // 6
// 注意:用 === 0 判断开头
if (strpos($str, "hello") === 0) {
echo "以hello开头";
}
4. 大小写转换
// 转小写
strtolower("Hello"); // hello
// 转大写
strtoupper("hello"); // HELLO
// 首字母大写
ucfirst("hello"); // Hello
// 每个单词首字母大写
ucwords("hello world"); // Hello World
5. 去除空白
// 去除两边空格
trim(" hello "); // hello
// 去左边
ltrim(" hello "); // hello
// 去右边
rtrim(" hello "); // hello
6. 字符串拼接
// 用点拼接
$str = "hello" . " " . "world";
// 多变量拼接
$a = "hello";
$b = "world";
$c = "$a $b"; // hello world
7. 分割和合并
// 分割成数组
$arr = explode(",", "a,b,c"); // ["a", "b", "c"]
// 数组合并成字符串
$str = implode(",", $arr); // a,b,c
8. 常用技巧
1)判断是否包含字符串:
if (strpos($str, "hello") !== false) {
echo "包含hello";
}
2)反转字符串:
strrev("hello"); // olleh
3)字符串长度:
strlen("hello"); // 5
mb_strlen("你好", "utf-8"); // 2
总结
PHP 字符串处理要点:
- substr 截取,注意中文用 mb_substr
- str_replace 替换
- strpos 查找,用 !== false 判断
- trim 去空格
- explode/implode 分割合并
- 注意中文编码问题,用 mb 开头的函数
写 PHP,字符串函数天天用。
PHP 数组常用函数
PHP 数组常用函数
数组是 PHP 最常用的数据结构,数组函数用熟了开发效率翻倍。整理一份常用清单。
1. 数组创建和遍历
// 索引数组
$arr1 = [1, 2, 3];
// 关联数组
$arr2 = ['name' => '张三', 'age' => 25];
// 遍历
foreach ($arr2 as $key => $value) {
echo "$key: $value\n";
}
2. 数组增删改查
// 追加元素
$arr[] = 4;
array_push($arr, 5, 6);
// 头部插入
array_unshift($arr, 0);
// 删除末尾元素
array_pop($arr);
// 删除头部元素
array_shift($arr);
// 删除指定元素
unset($arr[0]);
3. 数组合并和拆分
// 合并数组
$arr1 = [1, 2];
$arr2 = [3, 4];
$merged = array_merge($arr1, $arr2); // [1,2,3,4]
// 拆分
$slice = array_slice($arr, 0, 2);
4. 查找和过滤
// 判断键是否存在
array_key_exists('name', $arr);
// 判断值是否存在
in_array('张三', $arr);
// 查找值对应的键
array_search('张三', $arr);
// 数组过滤
$filtered = array_filter([1, 2, 3, 4], function($n) {
return $n > 2;
}); // [3,4]
5. 排序
sort($arr); // 升序
rsort($arr); // 降序
asort($arr); // 按值升序,保留键
ksort($arr); // 按键升序
6. 常用操作
// 数组长度
count($arr);
// 去重
array_unique($arr);
// 反转
array_reverse($arr);
// 随机取一个
array_rand($arr);
7. 实际应用
统计数组中出现次数:
$counts = array_count_values(['a', 'b', 'a', 'c', 'a']);
// ['a' => 3, 'b' => 1, 'c' => 1]
二维数组按某列排序:
$users = [
['name' => '张三', 'age' => 25],
['name' => '李四', 'age' => 20]
];
array_multisort(array_column($users, 'age'), SORT_ASC, $users);
总结
PHP 数组函数非常多,日常开发记住这些常用的就够了:
- 增删改查:array_push / array_pop / unset
- 合并拆分:array_merge / array_slice
- 查找过滤:in_array / array_filter
- 排序:sort / asort / ksort
数组是 PHP 的灵魂,多用多练就熟了。
PHP 字符串处理函数
PHP 字符串处理函数
字符串处理是 PHP 开发最常用的操作,整理一份常用函数清单。
1. 字符串长度
// 英文字符串长度
echo strlen("hello world"); // 11
// 中文字符串长度(mbstring扩展)
echo mb_strlen("你好世界", "UTF-8"); // 4
2. 截取字符串
// 英文截取
echo substr("hello world", 0, 5); // hello
// 中文截取
echo mb_substr("你好世界", 0, 2, "UTF-8"); // 你好
3. 查找替换
// 查找位置
echo strpos("hello world", "world"); // 6
// 替换
echo str_replace("world", "PHP", "hello world"); // hello PHP
// 大小写转换
echo strtoupper("hello"); // HELLO
echo strtolower("HELLO"); // hello
4. 去除空格
// 去除两端空格
echo trim(" hello "); // hello
// 去除左侧空格
echo ltrim(" hello"); // hello
// 去除右侧空格
echo rtrim("hello "); // hello
5. 字符串分割
// 分割成数组
$arr = explode(",", "a,b,c");
print_r($arr); // Array([0]=>a [1]=>b [2]=>c)
// 数组合并成字符串
echo implode(",", $arr); // a,b,c
6. 格式化输出
// 格式化字符串
echo sprintf("你好,%s!今年%d岁", "张三", 25);
// 你好,张三!今年25岁
7. HTML 转义
// 转义特殊字符
echo htmlspecialchars("<script>alert(1)</script>");
// <script>alert(1)</script>
8. 常用场景
截取标题:
function subTitle($str, $len = 20) {
if (mb_strlen($str, "UTF-8") > $len) {
return mb_substr($str, 0, $len, "UTF-8") . "...";
}
return $str;
}
过滤空格和特殊字符:
function filterStr($str) {
$str = trim($str);
$str = str_replace(" ", "", $str);
return $str;
}
总结
字符串处理常用函数:
- 长度:strlen / mb_strlen
- 截取:substr / mb_substr
- 查找替换:strpos / str_replace
- 分割合并:explode / implode
- 去除空格:trim
做 PHP 开发这些函数一定要用熟。