PHP 第十周函数学习记录
addcslashes()
作用
addcslashes() 函数返回在指定的字符前添加反斜杠的字符串。
用法
addcslashes(string,characters)
注释
注释:addcslashes() 函数是区分大小写的。
注释:在对 0(NULL)、r(回车)、n(换行)、t(换页)、f(制表符)和 v(垂直制表符)应用 addcslashes() 时要小心。在 PHP 中,\0、\r、\n、\t、\f 和 \v 是预定义的转义序列。
案例
<?php
$str = "Welcome to my humble Homepage!";
echo $str."<br>";
echo addcslashes($str,'m')."<br>";
echo addcslashes($str,'H')."<br>";
?>
结果
Welcome to my humble Homepage!
Welco\me to \my hu\mble Ho\mepage!
Welcome to my humble \Homepage!
addslashes()
作用
addcslashes() 函数返回在指定的字符前添加反斜杠的字符串。
预定义字符是
- 单引号(’)
- 双引号(”)
- 反斜杠(\)
- NULL
用法
addslashes(string)
注释和提示
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备合适的字符串。
注释:默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。
案例
<?php
$str = addslashes('What does "yolo" mean?');
echo($str);
?>
结果
What does \"yolo\" mean?
bin2hex()
作用
bin2hex() 函数把 ASCII 字符的字符串转换为十六进制值。字符串可通过使用 pack() 函数再转换回去。
用法
bin2hex(string)
案例
<?php
$str = "Hello world!";
echo bin2hex($str) . "<br>";
echo pack("H*",bin2hex($str)) . "<br>";
?>
结果
48656c6c6f20776f726c6421
Hello world!
chop()
作用
chop() 函数移除字符串右侧的空白字符或其他预定义字符。
用法
chop(string,charlist)
参数 | 描述 |
---|---|
string | 必需。规定要检查的字符串。 |
charlist | 可选。规定从字符串中删除哪些字符。 如果 charlist 参数为空,则移除下列字符:
|
案例
<?php
$str = "Hello World!";
echo $str . "<br>";
echo chop($str,"World!");
?>
结果
Hello World!
Hello
chr()
作用
chr() 函数从指定 ASCII 值返回字符。
ASCII 值可被指定为十进制值、八进制值或十六进制值。八进制值被定义为带前置 0,十六进制值被定义为带前置 0x。
用法
chr(ascii)
案例
<?php
echo chr(52) . "<br>"; // Decimal value
echo chr(052) . "<br>"; // Octal value
echo chr(0x52) . "<br>"; // Hex value
?>
结果
4
*
R
chunk_split()
作用
chunk_split() 函数把字符串分割为一连串更小的部分。
用法
chunk_split(string,length,end)
string 必需。规定要分割的字符串。
length 可选。一个数字,定义字符串块的长度。默认为 76。
end 可选。一个字符串,定义在每个字符串块之后放置的内容。默认为 \r\n。
案例
<?php
$str = "Hello world!";
echo chunk_split($str,6,"...");
?>
结果
Hello ...world!...
convert_cyr_string()
作用
convert_cyr_string() 函数把字符串由一种 Cyrillic 字符集转换成另一种。
用法
convert_cyr_string(string,from,to)
string 必需。规定要转换的字符串。
from 必需。一个规定了源 Cyrillic 字符集的字符。
to 必需。一个规定了目标 Cyrillic 字符集的字符。
被支持的 Cyrillic 字符集是:
- k - koi8-r
- w - windows-1251
- i - iso8859-5
- a - x-cp866
- d - x-cp866
- m - x-mac-cyrillic
案例
<?php
$str = "Hello world! æøå";
echo $str . "<br>";
echo convert_cyr_string($str,'w','a');
?>
结果
Hello world! æøå
Hello world! ¦è¥
convert_uudecode()
作用
convert_uudecode() 函数对 uuencode 编码的字符串进行解码。
用法
convert_uudecode(string)
string 必需。规定要解码的 uuencode 编码的字符串。
案例
<?php
$str = ",2&5L;&\@=V]R;&0A `";
echo convert_uudecode($str);
?>
结果
Hello world!
convert_uuencode()
作用
convert_uuencode() 函数使用 uuencode 算法对字符串进行编码。
用法
convert_uuencode(string)
案例
<?php
$str = "Hello world!";
echo convert_uuencode($str);
?>
结果
,2&5L;&\@=V]R;&0A `
count_chars()
作用
count_chars() 函数返回字符串所用字符的信息(例如,ASCII 字符在字符串中出现的次数,或者某个字符是否已经在字符串中使用过)。
用法
count_chars(string,mode)
mode 可选。规定返回模式。默认是 0。有以下不同的返回模式:
- 0 - 数组,ASCII 值为键名,出现的次数为键值
- 1 - 数组,ASCII 值为键名,出现的次数为键值,只列出出现次数大于 * 0 的值
- 2 - 数组,ASCII 值为键名,出现的次数为键值,只列出出现次数等于 0 的值
- 3 - 字符串,带有所有使用过的不同的字符
- 4 - 字符串,带有所有未使用过的不同的字符
案例
<?php
$str = "Hello World!";
echo count_chars($str,3);
?>
结果
!HWdelor
crc32()
作用
crc32() 函数计算一个字符串的 32 位 CRC(循环冗余校验)。
该函数可用于验证数据的完整性。
用法
crc32(string)
提示
提示:为确保您能从 crc32() 函数中取得正确的字符串表示,您必须使用 printf() 或 sprintf() 函数的 %u 格式符。如果未使用 %u 格式符,结果可能会显示为不正确的数字或者负数。
案例
<?php
$str = crc32("Hello World!");
printf("%u\n",$str);
?>
结果
472456355
crypt()
作用
crypt() 函数返回使用 DES、Blowfish 或 MD5 算法加密的字符串。
用法
crypt(str,salt)
注释
没有相应的解密函数。crypt() 函数使用一种单向算法。
案例
<?php
// 设置密码
$password = 'mypassword';
// 获取散列值,使用自动盐值
$hash = crypt($password);
?>
echo()
作用
echo() 函数输出一个或多个字符串。
用法
echo(strings)
注释
echo() 函数实际不是一个函数,所以您不必对它使用括号。然而,如果您想要传多于一个参数给 echo(),使用括号将会生成解析错误。
echo() 函数比 print() 速度稍快。
echo() 函数也有简化语法。在 PHP 5.4.0 版本之前,该语法只适用于 short_open_tag 配置设置启用的情况。
explode()
作用
explode() 函数使用一个字符串分割另一个字符串,并返回由字符串组成的数组。
用法
explode(separator,string,limit)
limit 可选。规定所返回的数组元素的数目。
可能的值:
- 大于 0 - 返回包含最多 limit 个元素的数组
- 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组
- 0 - 返回包含一个元素的数组
案例
<?php
$str = 'one,two,three,four';
print_r(explode(',',$str));
// 零 limit
print_r(explode(',',$str,0));
// 正的 limit
print_r(explode(',',$str,2));
// 负的 limit
print_r(explode(',',$str,-1));
?>
结果
Array (
[0] => one
[1] => two
[2] => three
[3] => four
)
Array (
[0] => one,two,three,four
)
Array (
[0] => one
[1] => two,three,four
)
Array (
[0] => one
[1] => two
[2] => three
)
fprintf()
作用
fprintf() 函数把格式化的字符串写入到指定的输出流
用法
fprintf(stream,format,arg1,arg2,arg++)
案例
<?php
$number = 9;
$str = "Beijing";
$file = fopen("test.txt","w");
echo fprintf($file,"There are %u million bicycles in %s.",$number,$str);
?>
上面的代码将输出:
40
下面的文本将被写入到文件 “test.txt”:
There are 9 million bicycles in Beijing.
get_html_translation_table()
作用
get_html_translation_table() 函数返回 htmlentities() 和 htmlspecialchars() 函数使用的翻译表。
用法
get_html_translation_table(function,flags,character-set)
function 可选。规定返回哪个翻译表。
可能的值:
HTML_SPECIALCHARS - 默认。翻译某些需要 URL 编码的字符,以便正确地显示在 HTML 页面上。
HTML_ENTITIES - 翻译所有需要 URL 编码的字符,以便正确地显示在 HTML 页面上。
案例
print_r(get_html_translation_table(HTML_SPECIALCHARS));
// print_r(get_html_translation_table(HTML_ENTITIES));
结果
Array
(
["] => "
[&] => &
[<] => <
[>] => >
)
hebrev()
作用
hebrev() 函数把希伯来文本从右至左的流转换为左至右的流。
用法
hebrev(string,maxcharline)
string 必需。希伯来文本。
maxcharline 可选。规定每行的最大字符数。如果可能,hebrev() 将避免把单词断开。
提示
hebrev() 和 hebrevc() 可以把希伯来逻辑文本(Windows 编码)转换为希伯来可见文本。希伯来可见文本不需要特殊的从右至左字符支持,这使它对于在 Web 上显示希伯来文本很有用处。
案例
echo hebrev("á çùåï äúùñâ");
hebrevc()
作用
hebrevc() 函数把希伯来文本从右至左的流转换为左至右的流。同时,把新行(\n)转换为 <br>
用法
hebrevc(string,maxcharline)
提示
hebrev() 和 hebrevc() 可以把希伯来逻辑文本(Windows 编码)转换为希伯来可见文本。希伯来可见文本不需要特殊的从右至左字符支持,这使它对于在 Web 上显示希伯来文本很有用处。
案例
<?php
echo hebrevc("á çùåï äúùñâ\ná çùåï äúùñâ");
?>
hex2bin()
作用
hex2bin() 函数把十六进制值的字符串转换为 ASCII 字符。
用法
hex2bin(string)
提示
hebrev() 和 hebrevc() 可以把希伯来逻辑文本(Windows 编码)转换为希伯来可见文本。希伯来可见文本不需要特殊的从右至左字符支持,这使它对于在 Web 上显示希伯来文本很有用处。
案例
<?php
echo hex2bin("48656c6c6f20576f726c6421");
?>
结果
Hello World!
html_entity_decode()
作用
html_entity_decode() 函数把 HTML 实体转换为字符。
用法
html_entity_decode(string,flags,character-set)
string 必需。规定要解码的字符串。
flags 可选。规定如何处理引号以及使用哪种文档类型。
ENT_COMPAT - 默认。仅解码双引号。
ENT_QUOTES - 解码双引号和单引号。
ENT_NOQUOTES - 不解码任何引号。
character-set 可选。一个规定了要使用的字符集的字符串。
提示
html_entity_decode() 函数是 htmlentities() 函数的反函数。
案例
<?php
$str = "Jane & 'Tarzan'";
echo html_entity_decode($str, ENT_COMPAT);
echo "<br>";
echo html_entity_decode($str, ENT_QUOTES);
echo "<br>";
echo html_entity_decode($str, ENT_NOQUOTES);
?>
结果
// html源码结果
<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>
// html显示结果
Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
来源
本作品采用《CC 协议》,转载必须注明作者和本文链接