quotemeta
(PHP 4, PHP 5, PHP 7, PHP 8)
quotemeta — 转义元字符集
说明
quotemeta(string
$string
): string
返回 在下面这些特殊字符前加 反斜线(\
) 转义后的字符串。
这些特殊字符包含:
. \ + * ? [ ^ ] ( $ )
参数
-
string
-
输入字符串
返回值
返回 元字符集被转义后的 字符串,如果输入字符串string
为空,
则返回 false
。
注释
注意: 此函数可安全用于二进制对象。
参见
- addslashes() - 使用反斜线引用字符串
- addcslashes() - 以 C 语言风格使用反斜线转义字符串中的字符
- htmlentities() - 将字符转换为 HTML 转义字符
- htmlspecialchars() - 将特殊字符转换为 HTML 实体
- nl2br() - 在字符串所有新行之前插入 HTML 换行标记
- stripslashes() - 反引用一个引用字符串
- stripcslashes() - 反引用一个使用 addcslashes 转义的字符串
- preg_quote() - 转义正则表达式字符

User Contributed Notes 3 notes
kumarkulandai at gmail dot com ¶
12 years ago
<?php
$str = "Hello world. (can you hear me?)";
echo quotemeta($str);
?>
The output of the code above will be:
Hello world\. \(can you hear me\?\)
George Adams ¶
16 years ago
Took me a while to realize this was NOT the command I wanted for escaping potentially harmful characters in a string that would be used as part of a system command. Instead, I needed either escapeshellarg() (http://www.php.net/manual/en/function.escapeshellarg.php) or escapeshellcmd() (http://www.php.net/manual/en/function.escapeshellcmd.php)
Anonymous ¶
21 years ago
This function escapes characters that have special meaning in regular expressions. preg_quote() <http://php.net/manual/en/function.preg-quote.php> has similar functionality, but is more powerful since it escapes more characters (including one user-specified character).