PHP基础知识5【系统内置函数--字符串】
IP处理函数:
ip2long():将 IPV4 的字符串互联网协议转换成长整型数字
int ip2long ( string $ip_address
)
函数 ip2long() 返回 IPV4 网络地址的长整型格式,从标准网络地址格式(点字符串)转化得到。
long2ip():将长整型转化为字符串形式带点的互联网标准格式地址(IPV4)
$proper_address
)long2ip() 函数通过长整型的表达形式转化生成带点格式的互联网地址(例如:aaa.bbb.ccc.ddd )。
打印处理函数:
一、echo
echo() 实际上不是一个函数,是php语句,因此您无需对其使用括号。不过,如果您希望向 echo() 传递一个以上的参数,那么使用括号会发生解析错误。而且echo是返回void的,并不返回值,所以不能使用它来赋值。
例子:
1 <?php 2 $a = echo("55nav"); // 错误!不能用来赋值 3 echo "55nav"; // 55nav 4 echo ("55nav"); // 55nav 5 echo ("55nav","com"); //发生错误,有括号不能传递多个参数 6 echo "55nav"," com"," is", " web"; // 不用括号的时候可以用逗号隔开多个值, 会输出 55nav com is web 7 echo "55nav is 8 good 9 web."; // 不管是否换行,最终显示都是为一行 55nav is good web. 10 echo "$fistname com"; // 如果 $firstname = "55nav", 则会输出 55nav com. 11 echo '$firstname com'; // 由于使用单引号,所以不会输出$firstname的值,而是输出 $firstname com 12 ?>
二、print
print() 和 echo() 用法一样,但是echo速度会比print快一点点。实际上它也不是一个函数,因此您无需对其使用括号。不过,如果您希望向print() 传递一个以上的参数,那么使用括号会发生解析错误。注意print总是返回1的,这个和echo不一样,也就是可以使用print来赋值,不过没有实际意义。
例子:
1 <?php 2 $a = print("55nav"); // 这个是允许的 3 echo $a; // $a的值是1 4 ?>
三、print_r 函数
print_r函数打印关于变量的易于理解的信息。
语法:mixed print_r ( mixed $expression [, bool return ] )
如果变量是string , integer or float , 将会直接输出其值,如果变量是一个数组,则会输出一个格式化后的数组,便于阅读,也就是有key和value对应的那种格式。对于object对象类同。print_r有两个参数,第一个是变量,第二个可设为true,如果设为true,则会返回字符串,否则返回布尔值TRUE。
例子:
1 <?php 2 $a="55nav"; 3 $c = print_r($a); 4 echo $c; // $c的值是TRUE 5 $c = print_r($a, ture); 6 echo $c; // $c的值是字符串55nav 7 ?>
四、printf函数
printf函数返回一个格式化后的字符串。
语法:printf(format,arg1,arg2,arg++)
参数 format 是转换的格式,以百分比符号 (“%”) 开始到转换字符结束。下面是可能的 format 值:
* %% – 返回百分比符号
* %b – 二进制数
* %c – 依照 ASCII 值的字符
* %d – 带符号十进制数
* %e – 可续计数法(比如 1.5e+3)
* %u – 无符号十进制数
* %f – 浮点数(local settings aware)
* %F – 浮点数(not local settings aware)
* %o – 八进制数
* %s – 字符串
* %x – 十六进制数(小写字母)
* %X – 十六进制数(大写字母)
arg1, arg2, arg++ 等参数将插入到主字符串中的百分号 (%) 符号处。该函数是逐步执行的,在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。如果 % 符号多于 arg 参数,则您必须使用占位符。占位符被插入 % 符号之后,由数字和 “\$” 组成。可使用数字指定显示的参数,详情请看例子。
例子:
1 <?php 2 printf("My name is %s %s。","55nav", "com"); // My name is 55nav com。 3 printf("My name is %1\$s %1\$s","55nav", "com"); // 在s前添加1\$或2\$.....表示后面的参数显示的位置,此行输出 My name is Ricky Ricky因为只显示第一个参数两次。 4 printf("My name is %2\$s %1\$s","55nav", "com"); // My name is com 55nav 5 ?>
五、sprintf函数
此函数使用方法和printf一样,唯一不同的就是该函数把格式化的字符串写写入一个变量中,而不是输出来。
例子:
1 <?php 2 sprintf("My name is %1\$s %1\$s","55nav", "com"); //你会发现没有任何东西输出的。 3 $out = sprintf("My name is %1\$s %2\$s","55nav", "com"); 4 echo $out; //输出 My name is 55nav com 5 ?>
六、var_dump函数
功能: 输出变量的内容、类型或字符串的内容、类型、长度。常用来调试。
1 <?php 2 $a=100; 3 var_dump($a); //int(100) 4 $a=100.356; 5 var_dump($a); //float(100.356) 6 ?>
七、var_export()函数
功能: 输出或返回一个变量的字符串表示
<pre> <?php $a = array (1, 2, array ("a", "b", "c")); var_export ($a); /* 输出: array ( 0 => 1, 1 => 2, 2 => array ( 0 => 'a', 1 => 'b', 2 => 'c', ), ) */ $b = 3.1; $v = var_export($b, TRUE); echo $v; /* 输出: 3.1 */ ?> </pre>
序列化及反序列化函数:
serialize():产生一个可存储的值的表示
unserialize():从已存储的表示中创建 PHP 的值
常用的字符串处理函数:
str_replace():替换字符串中的一些字符(对大小写敏感)。
str_repeat():把字符串重复指定的次数。
strlen():返回字符串的长度。
stripos():返回字符串在另一字符串中第一次出现的位置(对大小写不敏感)。
str_split():把字符串分割到数组中。
trim():移除字符串两侧的空白字符和其他字符。
ltrim():移除字符串左侧的空白字符或其他字符。
rtrim():移除字符串右侧的空白字符或其他字符。
explode():把字符串打散为数组。
implode():返回由数组元素组合成的字符串。
substr():返回字符串的一部分。
substr_compare():从指定的开始位置(二进制安全和选择性区分大小写)比较两个字符串。
substr_count():计算子串在字符串中出现的次数。
substr_replace():把字符串的一部分替换为另一个字符串。
其他一些处理函数:
函数 | 描述 |
---|---|
返回在指定的字符前添加反斜杠的字符串。 |
|
返回在预定义的字符前添加反斜杠的字符串。 |
|
把 ASCII 字符的字符串转换为十六进制值。 |
|
删除字符串右侧的空白字符或其他字符。 |
|
从指定的 ASCII 值返回字符。 |
|
把字符串分割为一系列更小的部分。 |
|
把字符串由一种 Cyrillic 字符集转换为另一种。 |
|
解码 uuencode 编码字符串。 |
|
使用 uuencode 算法对字符串进行编码。 |
|
返回有关字符串中所用字符的信息。 |
|
计算字符串的 32 位 CRC。 |
|
单向的字符串加密法(hashing)。 |
|
输出一个或多个字符串。 |
|
把格式化的字符串写入到指定的输出流。 |
|
返回由 htmlspecialchars() 和 htmlentities() 使用的翻译表。 |
|
把希伯来文本转换为可见文本。 |
|
把希伯来文本转换为可见文本,并把新行(\n)转换为 <br>。 |
|
把十六进制值的字符串转换为 ASCII 字符。 |
|
把 HTML 实体转换为字符。 |
|
把字符转换为 HTML 实体。 |
|
把一些预定义的 HTML 实体转换为字符。 |
|
把一些预定义的字符转换为 HTML 实体。 |
|
implode() 的别名。 |
|
把字符串的首字符转换为小写。 |
|
返回两个字符串之间的 Levenshtein 距离。 |
|
返回本地数字及货币格式信息。 |
|
计算字符串的 MD5 散列。 |
|
计算文件的 MD5 散列。 |
|
计算字符串的 metaphone 键。 |
|
返回格式化为货币字符串的字符串。 |
|
返回特定的本地信息。 |
|
在字符串中的每个新行之前插入 HTML 换行符。 |
|
以千位分组来格式化数字。 |
|
返回字符串中第一个字符的 ASCII 值。 |
|
把查询字符串解析到变量中。 |
|
输出一个或多个字符串。 |
|
输出格式化的字符串。 |
|
把 quoted-printable 字符串转换为 8 位字符串。 |
|
把 8 位字符串转换为 quoted-printable 字符串。 |
|
引用元字符。 |
|
设置地区信息(地域信息)。 |
|
计算字符串的 SHA-1 散列。 |
|
计算文件的 SHA-1 散列。 |
|
计算两个字符串的相似度。 |
|
计算字符串的 soundex 键。 |
|
把格式化的字符串写入变量中。 |
|
根据指定的格式解析来自字符串的输入。 |
|
把 CSV 字符串解析到数组中。 |
|
替换字符串中的一些字符(对大小写不敏感)。 |
|
把字符串填充为新的长度。 |
|
对字符串执行 ROT13 编码。 |
|
随机地打乱字符串中的所有字符。 |
|
计算字符串中的单词数。 |
|
比较两个字符串(对大小写不敏感)。 |
|
查找字符串在另一字符串中的第一次出现。(strstr() 的别名。) |
|
比较两个字符串(对大小写敏感)。 |
|
比较两个字符串(根据本地设置)。 |
|
返回在找到某些指定字符的任何部分之前,在字符串中查找的字符数。 |
|
剥去字符串中的 HTML 和 PHP 标签。 |
|
删除由 addcslashes() 函数添加的反斜杠。 |
|
删除由 addslashes() 函数添加的反斜杠。 |
|
查找字符串在另一字符串中第一次出现的位置(大小写不敏感)。 |
|
使用一种"自然排序"算法来比较两个字符串(对大小写不敏感)。 |
|
使用一种"自然排序"算法来比较两个字符串(对大小写敏感)。 |
|
前 n 个字符的字符串比较(对大小写不敏感)。 |
|
前 n 个字符的字符串比较(对大小写敏感)。 |
|
在字符串中查找一组字符的任何一个字符。 |
|
返回字符串在另一字符串中第一次出现的位置(对大小写敏感)。 |
|
查找字符串在另一个字符串中最后一次出现。 |
|
反转字符串。 |
|
查找字符串在另一字符串中最后一次出现的位置(对大小写不敏感)。 |
|
查找字符串在另一字符串中最后一次出现的位置(对大小写敏感)。 |
|
返回在字符串中包含的特定字符的数目。 |
|
查找字符串在另一字符串中的第一次出现(对大小写敏感)。 |
|
把字符串分割为更小的字符串。 |
|
把字符串转换为小写字母。 |
|
把字符串转换为大写字母。 |
|
转换字符串中特定的字符。 |
|
把字符串中的首字符转换为大写。 |
|
把字符串中每个单词的首字符转换为大写。 |
|
把格式化的字符串写到指定的输出流。 |
|
输出格式化的字符串。 |
|
把格式化字符串写入变量中。 |
|
打断字符串为指定数量的字串 |