function daddslashes($string, $force = 0, $strip = FALSE) {
if (!MAGIC_QUOTES_GPC || $force) {
if (is_array($string)) {
foreach ($string as $key => $val) {
$string[$key] = daddslashes($val, $force);
}
} else {
$string = addslashes($strip ? stripslashes($string) : $string);
}
}
return $string;
}
$force:強制轉義(忽略 magic_quotes_gpc)。$strip:先 stripslashes 再 addslashes,防止雙重轉義(用於 $_GET/POST/COOKIE/REQUEST)。function saddslashes($string) {
if (!MAGIC_QUOTES_GPC) {
if (is_array($string)) {
foreach ($string as $key => $val) {
$string[$key] = saddslashes($val);
}
} else {
$string = addslashes($string);
}
}
return $string;
}
$force、$strip 參數。addslashes。| 特性 | daddslashes | saddslashes |
|---|---|---|
| 強制模式 | 支援 ($force) | 不支援 |
| 去重轉義 | 支援 ($strip) | 不支援 |
| 適用範圍 | 通用 GPC 過濾 | 簡單場景 |
**棄用兩者**,改用 PDO 預處理語句或 mysqli 參數綁定,從根源解決 SQL 注入,避免手動轉義的疏漏與編碼問題。