在PHP中,要正確實現轉義(escape),可以使用內置的函數mysqli_real_escape_string()
來轉義字符串。這個函數會對字符串中的特殊字符進行轉義,以防止SQL注入攻擊。
以下是一個示例代碼,演示如何使用mysqli_real_escape_string()
函數來轉義字符串:
// 連接數據庫
$mysqli = new mysqli("localhost", "username", "password", "database");
// 檢查連接
if($mysqli->connect_error) {
die("連接失敗: " . $mysqli->connect_error);
}
// 需要轉義的字符串
$string = "It's a string with special characters like ' and \"";
// 轉義字符串
$escaped_string = $mysqli->real_escape_string($string);
// 輸出轉義后的字符串
echo "轉義后的字符串: " . $escaped_string;
// 關閉數據庫連接
$mysqli->close();
在上面的代碼中,我們首先創建了一個與數據庫的連接,然后定義了一個包含特殊字符的字符串。接著,我們使用mysqli_real_escape_string()
函數來轉義這個字符串,并將結果存儲在$escaped_string
變量中。最后,我們輸出轉義后的字符串并關閉數據庫連接。
使用mysqli_real_escape_string()
函數可以確保輸入的數據在SQL語句中不會被誤解為SQL命令,從而有效地防止SQL注入攻擊。