从上课学的函数里,摘录 10 个,学习使用方法。
本来想学习上课未讲过的函数,但觉得上课讲的应该是更重要的,而且这些也没有掌握好,所以,优先学习这些吧。
1. str_shuffle() 随机打乱一个字符串
本函数并不会生成安全加密的值,不应用于加密用途。
$str = 'abcdefg';
echo str_shuffle($str); // bcdagef (每次都不同,随机排序。用中文测试时,显示乱码)
2. strpos() 查找字符串的首次出现
应使用 === 运算符来测试此函数的返回值。
$string = '“赵客缦胡缨”';
$findme = '客';
$pos = strpos($string, $findme);
echo $pos ? "{$string} 里有『 {$findme} 』字。" : "没有 『 {$findme} 』字。"; // “赵客缦胡缨” 里有『 客 』字。
3. htmlspecialchars() 将特殊字符转换为 HTML 实体
$string = '<p> 标签定义段落。';
echo htmlspecialchars($string); // <p> 标签定义段落。
4. impload() 将一个一维数组的值转化为字符串
$array = ['lastname', 'email', 'phone'];
var_dump(implode(', ', $array)) ; // string(22) "lastname, email, phone"
5. explode() 使用一个字符串分割另一个字符串,返回数组。
$str = 'piece1, piece2, piece3, piece4, piece5';
// 使用逗号(,)分割 $str
$arr = print_r(explode(',', $str), true);
printf('<pre>%s</pre>', $arr);
输出结果:
Array
(
[0] => piece1
[1] => piece2 // 空格也保留了
[2] => piece3
[3] => piece4
[4] => piece5
)
6. str_split() 将字符串转换为数组
$str = "Hello Friend";
// 4 表示每段的长度
$arr = print_r(str_split($str, 4), true);
printf('<pre>%s</pre>', $arr);
输出结果:
Array
(
[0] => Hell
[1] => o Fr
[2] => iend
)
7. trim() 去除字符串首尾处的空白(或其他)字符
$text = " Hello Friend \t\n\r ";
$str = print_r(trim($text), true);
printf('<pre>%s</pre>', $str); //
<pre>Hello Friend</pre>
8. str_ireplace() 子字符串替换,忽略大小写
// 把 World 替换为 Jack,忽略大小写
echo str_ireplace('World', 'Jack', 'Hello World'); //Hello Jack
9. addslashes() 使用反斜线引用字符串
$str = "This'is a test";
echo addslashes($str); // This\'is a test
向数据库写入数据时,强烈建议使用 DBMS 指定的转义函数(比如 MySQL 是 mysqli_real_escape_string())
10. sha1_file() 计算文件的 sha1 散列值
// 计算当前目录下 0422.php 文件的散列值
// 该散列值是一个 40 字符长度的十六进制数字
echo sha1_file('0422.php');
// ae8cc7c97f674ee37fe109ef0b8091898f806040