PHP 字符串 quotemeta()函数
quotemeta()是PHP中的一个内置函数,用于在字符串中的某些元字符之前添加反斜杠。它通过在每个元字符之前添加反斜杠来返回字符串。它避免了数据库的SQL注入攻击。quotemeta()是一个 二进制安全 函数,意味着它可以在不修改其内容的情况下在二进制文件上执行。
预定义的元字符有:
- (
.
) – 句点加号 - (
+
) – 加号 - (
*
) – 星号 - (
?
) – 问号 - (
[ ]
) – 方括号和插入符号 - (
^
) – 插入符号 - (
$
) – 美元符号 - (
( )
) – 括号
注意:此函数可用于转义具有特殊含义的字符。
语法
quotemeta()函数的语法如下,只有一个字符串参数:
quotemeta (string $str)
参数
String(必需) – 此函数有一个参数,是 字符串 。我们在此函数中提供字符串参数,以引用以上教程中列出的每个元字符之前的反斜杠。
返回值
quotemeta()函数通过在以上列出的每个元字符之前添加反斜杠(\)来返回字符串,如果给定的字符串为空,则返回FALSE。
示例
要了解quotemeta()函数的实际实现,请参阅下面给出的示例:
示例1
<?php
str1 = "Hello user! Welcome to javaTpoint.";
echo quotemeta(str1);
echo '</br>';
str2 = "Would you like to learn PHP?";
echo quotemeta(str2);
?>
输出:
让我们检查以下输出,看看在每个元字符前是否添加了反斜杠。
Hello user! Welcome to javaTpoint\.
Would you like to learn PHP\?
示例2
<?php
strin1 = "Dollar symbol is used to declare variable in PHP.";
echo quotemeta(str);
echo '</br>';strin2 = "Matrix is represented by square [ ] brackets.";
echo quotemeta($str2);
?>
输出:
让我们来检查以下示例,每个元字符前都添加了反斜杠 (\)。
Dollar symbol \$ is used to declare variable in PHP\.
Matrix is represented by square \[\ ] brackets\.
示例 3
<?php
strin1 = "equation1 = (m - n) ^o * p";
echo quotemeta(string);
?>
输出:
equation1 =/(m - n/) /^o /* p