ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して SQL Server クエリで文字列をエスケープし、エラーを処理する方法
PHP を使用した SQL Server での文字列のエスケープ: mysql_real_escape_string() の代替手段
PHP の mysql_real_escape_string() は、目的の文字列をエスケープするために広く使用されています。 MySQL データベース クエリではありません。 Microsoft SQL Serverに適しています。この記事では、PHP を使用した SQL Server での文字列のエスケープとエラー取得の両方の代替手段について説明します。
String Escaping
十分ではない addslashes() の代わりに、 16 進数バイト文字列エンコード方式は、より包括的なソリューションを提供します:
$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 中国語 Web サイトの他の関連記事を参照してください。