首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

addslashes

(PHP 4, PHP 5, PHP 7)

addslashes - 用斜杠引用字符串

描述

代码语言:javascript
复制
string addslashes ( string $str )

在需要转义的字符之前返回带反斜杠的字符串。这些字符是单引号('),双引号(),反斜线(__)和NULL(NULL字节)。

addslashes()的一个示例使用是当您将数据输入到由PHP评估的字符串中时。例如,O'Reilly存储在$ str中,您需要转义$ str。(例如eval(“echo'”.addslashes($ str)。“';”);)

为了逃避数据库参数,DBMS特定的转义函数(例如MySQL的mysqli_real_escape_string()或PostgreSQL的pg_escape_literal(),pg_escape_string())应该用于安全原因。DBMS具有不同于参数的标识符(例如表名,字段名称)的转义规范。一些DBMS如PostgreSQL提供了标识符转义函数pg_escape_identifier(),但不是所有的DBMS都提供标识符转义API。如果是这种情况,请参阅数据库系统手册以获取正确的转义方法。

如果你的DBMS没有转义函数,并且DBMS使用__来转义特殊字符,那么只有当这个转义方法适用于你的数据库时,才可以使用这个函数。请注意,使用addslashes()进行数据库参数转义可能会导致大多数数据库出现安全问题。

默认情况下,PHP指令的magic_quotes_gpc是开启的,在PHP 5.4之前,它基本上在运行,且addslashes()对所有的GET,POST,COOKIE数据。不要在已使用magic_quotes_gpc转义的字符串上使用addslashes(),因为您将执行双重转义。函数get_magic_quotes_gpc()可能会派上用场来检查它。

参数

str

要转义的字符串。

返回值

返回转义字符串。

例子

示例#1 一个addslashes()示例

代码语言:javascript
复制
<?php
$str = "Is your name O'Reilly?";

// Outputs: Is your name O\'Reilly?
echo addslashes($str);
?>

扩展内容

  • stripcslashes() - 使用addcslashes引用不加引号的字符串
  • stripslashes() - 取消引号引用的字符串
  • addcslashes() - 用C样式的斜杠引用字符串
  • htmlspecialchars() - 将特殊字符转换为HTML实体
  • quotemeta() - 引用元字符
  • get_magic_quotes_gpc() - 获取magic_quotes_gpc的当前配置设置

← addcslashes

bin2hex →

扫码关注腾讯云开发者

领取腾讯云代金券