目录
PHP stripslashes()
函数详解
stripslashes()
是 PHP 中用于去除字符串中的反斜线(\
)的函数,主要用于处理被 addslashes()
转义过的字符串或从某些数据源获取的带有不必要反斜线的字符串。
一、函数作用
核心功能
去除字符串中的反斜线转义字符
将
\'
转换为'
将
\"
转换为"
将
\\
转换为\
将
\0
转换为 NULL 字符
典型应用场景
处理由
addslashes()
转义后的字符串清理从数据库读取的转义数据
处理通过
magic_quotes_gpc
自动转义的数据(该特性已在 PHP 5.4.0 移除)准备需要原始格式的字符串数据
二、基本语法
string stripslashes ( string $str )
参数:
$str
:需要处理的输入字符串
返回值:
返回去除反斜线后的字符串
三、详细示例说明
示例1:基本用法
$str = "Is your name O\'Reilly?";
echo stripslashes($str);
输出结果:
Is your name O'Reilly?
处理过程:
识别
\'
序列将其转换为单引号
'
保持字符串其他部分不变
示例2:处理多种转义字符
$str = "This is \\ a backslash, \"double quotes\" and \'single quotes\'";
echo "Original: " . $str . "\n";
echo "Processed: " . stripslashes($str);
输出结果:
Original: This is \ a backslash, \"double quotes\" and \'single quotes\'
Processed: This is \ a backslash, "double quotes" and 'single quotes'
示例3:处理数据库数据
// 模拟从数据库获取的数据(假设已用addslashes转义)
$dbData = [
'title' => 'Don\\\'t panic',
'content' => 'The \"answer\" is 42'
];
// 处理数据
$cleanData = array_map('stripslashes', $dbData);
print_r($cleanData);
输出结果:
Array
(
[title] => Don't panic
[content] => The "answer" is 42
)