PHP String 函数
1.addslashes()返回在预定义字符之前添加反斜杠的字符串
addslashes(string)
预定义字符是:单引号(')双引号(")反斜杠(\)NULL
string:必需。规定要转义的字符串
返回值:返回已转义的字符串
实例:
<?php
$str = addslashes('Shanghai is the "biggest" city in China.');
echo($str);
?>
输出:Shanghai is the \"biggest\" city in China.
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串。
注释:默认地,PHP 对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。所以您不应对已转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测
2.stripslashes()删除由 addslashes() 函数添加的反斜杠
stripslashes(string)
string:必需。规定要检查的字符串。
返回值:返回已剥离反斜杠的字符串
实例:
<?php
echo stripslashes("Who\'s Bill Gates?");
?>
输出:Who's Bill Gates?
3.htmlspecialchars()把预定义的字符转换为 HTML 实体
htmlspecialchars(string,flags,character-set,double_encode)
预定义的字符是:
& (和号)成为 &
" (双引号)成为 "
' (单引号)成为 '
< (小于)成为 <
> (大于)成为 >
string:必须。规定要转换的字符串
flags:可选。规定如何处理引号、无效的编码以及使用哪种文档类型
ENT_COMPAT - 默认。仅编码双引号
ENT_QUOTES - 编码双引号和单引号
ENT_NOQUOTES - 不编码任何引号
character-set:可选。规定了要使用的字符集的字符串。默认UTF-8
double_encode:可选。布尔值,规定了是否编码已存在的 HTML 实体
返回值:返回被转换的字符串
实例:
<?php
$str = "Bill & 'Steve'";
echo htmlspecialchars($str, ENT_COMPAT); // 只转换双引号
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // 不转换任何引号
?>
输出:
Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'
4.preg_replace() 函数用于正则表达式的搜索和替换
preg_replace(pattern,replacement,subject,limit)
pattern:正则表达式
replacement:替换的内容
subject:需要匹配替换的对象
limit:可选,指定替换的个数,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换
实例:
<?php
$str = "The quick brown fox jumped over the lazy dog.";
$str = preg_replace('/\s/','-',$str);//将$str中的空格替换成-
echo $str;
?>
输出:The-quick-brown-fox-jumped-over-the-lazy-dog.
1.addslashes()返回在预定义字符之前添加反斜杠的字符串
addslashes(string)
预定义字符是:单引号(')双引号(")反斜杠(\)NULL
string:必需。规定要转义的字符串
返回值:返回已转义的字符串
实例:
<?php
$str = addslashes('Shanghai is the "biggest" city in China.');
echo($str);
?>
输出:Shanghai is the \"biggest\" city in China.
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串。
注释:默认地,PHP 对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。所以您不应对已转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测
2.stripslashes()删除由 addslashes() 函数添加的反斜杠
stripslashes(string)
string:必需。规定要检查的字符串。
返回值:返回已剥离反斜杠的字符串
实例:
<?php
echo stripslashes("Who\'s Bill Gates?");
?>
输出:Who's Bill Gates?
3.htmlspecialchars()把预定义的字符转换为 HTML 实体
htmlspecialchars(string,flags,character-set,double_encode)
预定义的字符是:
& (和号)成为 &
" (双引号)成为 "
' (单引号)成为 '
< (小于)成为 <
> (大于)成为 >
string:必须。规定要转换的字符串
flags:可选。规定如何处理引号、无效的编码以及使用哪种文档类型
ENT_COMPAT - 默认。仅编码双引号
ENT_QUOTES - 编码双引号和单引号
ENT_NOQUOTES - 不编码任何引号
character-set:可选。规定了要使用的字符集的字符串。默认UTF-8
double_encode:可选。布尔值,规定了是否编码已存在的 HTML 实体
返回值:返回被转换的字符串
实例:
<?php
$str = "Bill & 'Steve'";
echo htmlspecialchars($str, ENT_COMPAT); // 只转换双引号
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // 转换双引号和单引号
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // 不转换任何引号
?>
输出:
Bill & 'Steve'
Bill & 'Steve'
Bill & 'Steve'
4.preg_replace() 函数用于正则表达式的搜索和替换
preg_replace(pattern,replacement,subject,limit)
pattern:正则表达式
replacement:替换的内容
subject:需要匹配替换的对象
limit:可选,指定替换的个数,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换
实例:
<?php
$str = "The quick brown fox jumped over the lazy dog.";
$str = preg_replace('/\s/','-',$str);//将$str中的空格替换成-
echo $str;
?>
输出:The-quick-brown-fox-jumped-over-the-lazy-dog.