PHP 第十二周函数学习记录
sha1()
作用
sha1() 函数计算字符串的 SHA-1 散列。
用法
sha1(string,raw)
案例
<?php
$str = "Hello";
echo sha1($str);
?>
结果
f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
sha1_file()
作用
sha1_file() 函数计算文件的 SHA-1 散列。
用法
sha1_file(file,raw)
案例
<?php
$filename = "test.txt";
$sha1file = sha1_file($filename);
echo $sha1file;
?>
结果
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
similar_text()
作用
similar_text() 函数计算两个字符串的相似度。
用法
similar_text(string1,string2,percent)
案例
<?php
echo similar_text("Hello World","Hello Peter");
?>
结果
7
soundex()
作用
soundex() 函数计算字符串的 soundex 键。
用法
soundex(string)
案例
<?php
$str = "Hello";
echo soundex($str);
?>
结果
H400
sprintf()
作用
sprintf() 函数把格式化的字符串写入一个变量中。
用法
sprintf(format,arg1,arg2,arg++)
案例
<?php
$number = 9;
$str = "RUNOOB";
$txt = sprintf("%s 每天有 %u 万人在访问!", $str, $number);
echo $txt;
?>
结果
RUNOOB 每天有 9 万人在访问!
sscanf()
作用
sscanf() 函数根据指定的格式解析来自一个字符串的输入。 sscanf() 函数基于格式字符串解析字符串到变量中。
用法
sscanf(string,format,arg1,arg2,arg++)
案例
<?php
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// show types and values
var_dump($age,$weight);
?>
结果
int(30) int(60)
str_getcsv()
作用
str_getcsv() 函数解析 CSV 格式字段的字符串,并返回一个包含所读取字段的数组。
用法
str_getcsv(string,separator,enclosure,escape)
参数 | 描述 |
---|---|
string | 必需。规定要解析的字符串。 |
separator | 可选。设置字段分界符(只允许一个字符),默认值为逗号( , )。 |
enclosure | 可选。设置字段环绕符(只允许一个字符),默认值为双引号( “ )。 |
escape | 可选。设置转义字符(只允许一个字符),默认值为反斜线( \ )。 |
str_ireplace()
作用
str_ireplace() 函数替换字符串中的一些字符(不区分大小写)。
用法
str_ireplace(find,replace,string,count)
该函数必须遵循下列规则:
- 如果搜索的字符串是一个数组,那么它将返回一个数组。
- 如果搜索的字符串是一个数组,那么它将对数组中的每个元素进行查找和替换。
- 如果同时需要对某个数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余的元素将用空字符串进行替换。
- 如果是对一个数组进行查找,但只对一个字符串进行替换,那么替代字符串将对所有查找到的值起作用。
案例
<?php
$find = array("HELLO","WORLD"); // This function is case-insensitive
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_ireplace($find,$replace,$arr));
?>
结果
Array (
[0] => B
[1] =>
[2] => !
)
str_pad()
作用
str_pad() 函数把字符串填充为新的长度。
用法
str_pad(string,length,pad_string,pad_type)
pad_string 可选。规定供填充使用的字符串。默认是空白。
pad_type 可能的值:
- STR_PAD_BOTH - 填充字符串的两侧。如果不是偶数,则右侧获得额外的填充。
- STR_PAD_LEFT - 填充字符串的左侧。
- STR_PAD_RIGHT - 填充字符串的右侧。这是默认的。
案例
<?php
$str = "Hello World";
echo str_pad($str,20,".",STR_PAD_LEFT);
?>
结果
Hello World.........
str_repeat()
作用
str_repeat() 函数把字符串重复指定的次数。
用法
str_repeat(string,repeat)
案例
<?php
echo str_repeat(".",13);
?>
结果
.............
str_replace()
作用
str_replace() 函数替换字符串中的一些字符(区分大小写)。
用法
str_replace(find,replace,string,count)
该函数必须遵循下列规则:
- 如果搜索的字符串是一个数组,那么它将返回一个数组。
- 如果搜索的字符串是一个数组,那么它将对数组中的每个元素进行查找和替换。
- 如果同时需要对某个数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余的元素将用空字符串进行替换。
- 如果是对一个数组进行查找,但只对一个字符串进行替换,那么替代字符串将对所有查找到的值起作用。
注释
该函数是区分大小写的。请使用 str_ireplace() 函数执行不区分大小写的搜索
该函数是二进制安全的
案例
<?php
echo str_replace("world","Peter","Hello world!");
?>
结果
Hello Peter!
str_rot13()
作用
str_rot13() 函数对字符串执行 ROT13 编码。
用法
str_rot13(string)
提示
ROT13 编码是把每一个字母在字母表中向前移动 13 个字母得到。数字和非字母字符保持不变。
编码和解码都是由相同的函数完成的。如果您把一个已编码的字符串作为参数,那么将返回原始字符串。
案例
<?php
echo str_rot13("Hello World");
echo "<br>";
echo str_rot13("Uryyb Jbeyq");
?>
结果
Uryyb Jbeyq
Hello World
str_shuffle()
作用
str_shuffle() 函数随机地打乱字符串中的所有字符。
用法
str_shuffle(string)
案例
<?php
echo str_shuffle("Hello World");
?>
结果
lolWo drHle
str_split()
作用
str_split() 函数把字符串分割到数组中。
用法
str_split(string,length)
案例
<?php
print_r(str_split("Hello"));
?>
结果
Array (
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
)
str_word_count()
作用
str_word_count() 函数计算字符串中的单词数。
用法
str_word_count(string,return,char)
案例
<?php
echo str_word_count("Hello world!");
?>
结果
2
strcasecmp()
作用
strcasecmp() 函数比较两个字符串。
用法
strcasecmp(string1,string2)
提示
提示:strcasecmp() 函数是二进制安全的,且不区分大小写。
提示:该函数与 strncasecmp() 函数类似,不同的是,通过 strncasecmp() 您可以指定每个字符串用于比较的字符数。
案例
<?php
echo strcasecmp("Hello","HELLO");
echo "<br>";
echo strcasecmp("Hello","hELLo");
?>
结果
0
0
strchr()
作用
strchr() 函数搜索字符串在另一字符串中的第一次出现。
用法
strchr(string,search,before_search);
before_search 可选。一个默认值为 "false" 的布尔值。如果设置为 "true",它将返回 search 参数第一次出现之前的字符串部分。
注释
该函数是 strstr() 函数的别名。
该函数是二进制安全的。
该函数是区分大小写的。如需进行不区分大小写的搜索,请使用 stristr() 函数。
案例
<?php
echo strchr("Hello world!","world");
?>
结果
world!
strcmp()
作用
strcmp() 函数比较两个字符串。
用法
strcmp(string1,string2)
注释
strcmp() 函数是二进制安全的,且区分大小写。
该函数与 strncmp() 函数类似,不同的是,通过 strncmp() 您可以指定每个字符串用于比较的字符数。
案例
<?php
echo strcmp("Hello","Hello");
echo "<br>";
echo strcmp("Hello","hELLo");
?>
结果
0
-1
strcoll()
作用
strcoll() 函数比较两个字符串
字符串的比较会根据本地设置而变化(A<a 或 A>a)。
用法
strcmp(string1,string2)
注释
strcoll() 是区分大小写的,但不是二进制安全的。
如果当前的本地设置是 C 或 POSIX,则该函数的工作方式与 strcmp() 相同。
案例
<?php
setlocale (LC_COLLATE, 'NL');
echo strcoll("Hello World!","Hello World!");
echo "<br>";
setlocale (LC_COLLATE, 'en_US');
echo strcoll("Hello World!","Hello World!");
?>
结果
0
0
strcspn()
作用
strcspn() 函数返回在找到任何指定的字符之前,在字符串查找的字符数(包括空格)。
用法
strcspn(string,char,start,length)
案例
<?php
echo strcspn("Hello world!","w");
?>
结果
6
strcspn()
作用
strcspn() 函数返回在找到任何指定的字符之前,在字符串查找的字符数(包括空格)。
用法
strcspn(string,char,start,length)
案例
<?php
echo strcspn("Hello world!","w");
?>
结果
6
strip_tags()
作用
strip_tags() 函数剥去字符串中的 HTML、XML 以及 PHP 的标签。
用法
strip_tags(string,allow)
allow 可选。规定允许的标签。这些标签不会被删除。
注释
该函数始终会剥离 HTML 注释。这点无法通过 allow 参数改变。
该函数是二进制安全的。
案例
<?php
echo strip_tags("Hello <b>world!</b>");
?>
结果
Hello world!
stripcslashes()
作用
stripcslashes() 函数删除由 addcslashes() 函数添加的反斜杠。
用法
stripcslashes(string)
提示
该函数可用于清理从数据库中或者从 HTML 表单中取回的数据。
案例
<?php
echo stripslashes("Hello \World!");
?>
结果
Hello World!
stripslashes()
作用
stripslashes() 函数删除由 addslashes() 函数添加的反斜杠。
用法
stripslashes(string)
提示
该函数可用于清理从数据库中或者从 HTML 表单中取回的数据。
案例
<?php
echo stripslashes("Who\'s Peter Griffin?");
?>
结果
Who's Peter Griffin?
stripos()
作用
stripos() 函数查找字符串在另一字符串中第一次出现的位置(不区分大小写)
用法
stripos(string,find,start)
提示
stripos() 函数是不区分大小写的。
该函数是二进制安全的。
案例
<?php
echo stripos("I love php, I love php too!","PHP");
?>
结果
7
stristr()
作用
stristr() 函数搜索字符串在另一字符串中的第一次出现。
用法
stristr(string,search,before_search)
提示
该函数是不区分大小写的。如需进行区分大小写的搜索,请使用 strstr() 函数。
该函数是二进制安全的。
案例
<?php
echo stristr("Hello world!","WORLD");
?>
结果
world!
strlen()
作用
strlen() 函数返回字符串的长度,中文字符串的处理使用 mb_strlen() 函数。。
用法
strlen(string)
案例
<?php
echo strlen("Hello");
?>
结果
5
strnatcasecmp()
作用
strnatcasecmp() 函数使用一种"自然"算法来比较两个字符串(不区分大小写)。
在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。
用法
strlen(string)
返回值
- 0 - 如果两个字符串相等
- <0 - 如果 string1 小于 string2
- >0 - 如果 string1 大于 string2
案例
<?php
echo strnatcasecmp("2Hello world!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("10Hello world!","2Hello WORLD!");
?>
结果
-1
1
strnatcasecmp()
作用
strnatcasecmp() 函数使用一种"自然"算法来比较两个字符串(不区分大小写)。
在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。
用法
strnatcasecmp(string1,string2)
返回值
- 0 - 如果两个字符串相等
- <0 - 如果 string1 小于 string2
- >0 - 如果 string1 大于 string2
案例
<?php
echo strnatcasecmp("2Hello world!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("10Hello world!","2Hello WORLD!");
?>
结果
-1
1
strnatcmp()
作用
strnatcmp() 函数使用一种"自然"算法来比较两个字符串(区分大小写)。
用法
strnatcmp(string1,string2)
返回值
- 0 - 如果两个字符串相等
- <0 - 如果 string1 小于 string2
- >0 - 如果 string1 大于 string2
案例
<?php
echo strnatcmp("2Hello world!","10Hello world!");
echo "<br>";
echo strnatcmp("10Hello world!","2Hello world!");
?>
结果
-1
1
strncasecmp()
作用
strncasecmp() 函数比较两个字符串(不区分大小写)。
用法
strncasecmp(string1,string2,length)
返回值
- 0 - 如果两个字符串相等
- <0 - 如果 string1 小于 string2
- >0 - 如果 string1 大于 string2
案例
<?php
echo strncasecmp("Hello world!","hello earth!",6);
?>
结果
0
strncmp()
作用
strncmp() 函数比较两个字符串(区分大小写)。
用法
strncmp(string1,string2,length)
返回值
- 0 - 如果两个字符串相等
- <0 - 如果 string1 小于 string2
- >0 - 如果 string1 大于 string2
案例
<?php
echo strncmp("Hello world!","Hello earth!",6);
?>
结果
0
来源
本作品采用《CC 协议》,转载必须注明作者和本文链接