使用PHP 在SQL Server 中轉義字串:mysql_real_escape_string() 的替代方案
雖然PHP 的mysql_real_escape_string(義字串MySQL資料庫查詢,它不適合Microsoft SQL Server。本文探討了使用 PHP 在 SQL Server 中進行字串轉義和錯誤檢索的替代方案。
字串轉義
取代了addslashes(),這並不完全足夠,十六進位位元組串編碼方法提供了更全面的解決方案:
$unpacked = unpack('H*hex', $data); mssql_query(' INSERT INTO sometable (somecolumn) VALUES (0x' . $unpacked['hex'] . ') ');
更抽象實現:
function mssql_escape($data) { if(is_numeric($data)) return $data; $unpacked = unpack('H*hex', $data); return '0x' . $unpacked['hex']; } mssql_query(' INSERT INTO sometable (somecolumn) VALUES (' . mssql_escape($somevalue) . ') ');
錯誤檢索
mssql_get_last_message() 函數相當於SQL Server 上下文中的mysql_error(),提供任何錯誤的詳細資訊遇到錯誤。
以上是如何使用 PHP 在 SQL Server 查詢中轉義字串並處理錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!