使用 \\ 還是 \ 看你如何的定義字符串的。其實只有兩處轉義:PHP 中 和 MySQL 中。
PHP 中 如果你用雙引號”" 定義字符串, 那麼這裡有一次轉義。如果用單引號就不會轉義。
$sql = “SELECT * FROM table WHERE col LIKE ‘%a\\%’ “;
這樣實際上經過轉義發給 MySQL 的是
SELECT * FROM table WHERE col LIKE ‘%a\%’;
用單引號則不會轉義(除了單引號,當然變量也不會展開):
$sql = ‘SELECT * FROM table WHERE col LIKE ’%a\%’ ‘;
發給 MySQL 的也是
SELECT * FROM table WHERE col LIKE ‘%a\%’;