導航:首頁 > 編程語言 > phpmysql引號轉義字元

phpmysql引號轉義字元

發布時間:2022-09-15 01:42:50

㈠ mysql+php程序中sql語句中的引號使用方法,什麼時候用雙引號什麼時候用單引號

這就要從雙引號和單引號的作用講起:
雙引號裡面的欄位會經過編譯器解釋然後再當作HTML代碼輸出,但是單引號裡面的不需要解釋,直接輸出。例如:
$abc='I love u';
echo $abc //結果是:I love u
echo '$abc' //結果是:$abc
echo "$abc" //結果是:I love u
所以在對資料庫裡面的SQL語句賦值的時候也要用在雙引號裡面SQL="select a,b,c from ..."
但是SQL語句中會有單引號把欄位名引出來
例如:select * from table where user='abc';
這里的SQL語句可以直接寫成SQL="select * from table where user='abc'"
但是如果象下面:
$user='abc';
SQL1="select * from table where user=' ".$user." ' ";對比一下
SQL2="select * from table where user=' abc ' "
我把單引號和雙引號之間多加了點空格,希望你能看的清楚一點。
也就是把'abc' 替換為 '".$user."'都是在一個單引號裡面的。只是把整個SQL字元串分割了。
SQL1可以分解為以下3個部分
1:"select * from table where user=' "
2:$user
3:" ' "
字元串之間用 . 來連接,這樣能明白了吧。

㈡ php操作MySQL中單引號與怎麼處理

花括弧,花括弧中既可以輸出簡單變數,也可以輸出復雜變數,如數組、對象等;

1.$a = 'abcd';2.$b = array('aaa' => 'abcd', 'bbb' => array(12,34));3.echo "{$a}"; // 輸出 abcd4.echo "{$b['aaa']}"; // 輸出 abcd5.echo "{$b['bbb'][1]}"; // 輸出 34
所以寫的時候想偷懶就用花括弧,不會出錯;
但是在性能上,單引號的性能最好,因為單引號中的內容會直接被當成字元串,沒其他的解析;而解析雙引號的時候,會先判斷雙引號內有沒有變數,有變數就把變數用變數值代替,最後再輸出雙引號內整個的內容;花括弧就更不用說了,可以輸出復雜的變數內容。

㈢ php mysql轉義特殊字元的函數有哪些

addslashes對SQL語句中的特殊字元進行轉義操作,包括(『), (「), (), (NUL)四個字元,此函數在DBMS沒有自己的轉義函數時候使用,但是如果DBMS有自己的轉義函數,那麼推薦使用原裝函數,比如MySQL有mysql_real_escape_string函數用來轉義SQL。 注意在PHP5.3之前,magic_quotes_gpc是默認開啟的,其主要是在$GET, $POST, $COOKIE上執行addslashes操作,所以不需要在這些變數上重復調用addslashes,否則會double escaping的。不過magic_quotes_gpc在PHP5.3就已經被廢棄,從PHP5.4開始就已經被移除了,如果使用PHP最新版本可以不用擔心這個問題。stripslashes為addslashes的unescape函數。

㈣ php操作mysql資料庫時,雙引號單引號,花括弧如何運用感覺有些混亂

單引號,單引號中的內容會被直接當成一個字元串,單引號中無法輸出
變數值

$a = 'abcd';
echo '$a'; // 輸出結果就是 $a,而不是 abcd
雙引號
,雙引號中可以輸出簡單變數,不能輸出復雜變數,否則會報錯;
$a = 'abcd';
$b = array('aaa' => 'abcd');
echo "$a"; // 輸出 abcd,因為雙引號中可以解析簡單變數
echo "$b['aaa']"; // 直接報錯,因為雙引號中不能解析復雜變數
花括弧,花括弧中既可以輸出簡單變數,也可以輸出復雜變數,如數組、對象等;
$a = 'abcd';
$b = array('aaa' => 'abcd', 'bbb' => array(12,34));
echo "{$a}"; // 輸出 abcd
echo "{$b['aaa']}"; // 輸出 abcd
echo "{$b['bbb'][1]}"; // 輸出 34
所以寫的時候想偷懶就用花括弧,不會出錯;
但是在性能上,單引號的性能最好,因為單引號中的內容會直接被當成字元串,沒其他的解析;而解析雙引號的時候,會先判斷雙引號內有沒有變數,有變數就把變數用變數值代替,最後再輸出雙引號內整個的內容;花括弧就更不用說了,可以輸出復雜的變數內容。
所以一般如果項目沒有性能要求的話或者
小項
目的話,隨便怎麼用沒關系;但是大網站或者要求性能的網站就得視情況挑著用了

㈤ 用php把html代碼存入mysql為什麼需要轉義

因為html中難免會出現單引號 或 雙引號這種情況。
如果不去進行轉義的話。插入的時候就會在引號位置截斷,導致sql語句無法執行。

㈥ PHP中「\」怎麼存進資料庫

針對你拉追加問題:$mysql->insert_table("test1","name","'mm\\'");
這個只存進「mm",斜線「\」沒有
這里是這樣的,首先,\是PHP里的轉義字元,使用兩個\,即"\\",實際上相當於一個\字元;
然後再說一點,在資料庫中,單引號'是資料庫中的轉義字元,所以,你這里應該寫作:
$mysql->insert_table("test1","name","mm'\\");

㈦ php原樣輸出mysql內容

定義和用法
htmlspecialchars() 函數把一些預定義的字元轉換為 HTML 實體。
預定義的字元是:
& (和號) 成為 &
" (雙引號) 成為 "
' (單引號) 成為 '
< (小於) 成為 <
> (大於) 成為 >
http://www.w3school.com.cn/php/func_string_htmlspecialchars.asp

這個函數完全滿足你的需求。

㈧ PHP如何去掉轉義

string addslashes ( string str) 返回字元串,該字元串為了資料庫查詢語句等的需要在某些字元前加上了反斜線。
​這些字元是單引號(\')、雙引號(\")、反斜線(\\)與 NUL(NULL 字元) stripslashes作用相反在處理mysql和GET、POST的數據時,常常要對數據的引號進行轉義操作。 PHP中有三個設置可以實現自動對』(單引號),」(雙引號),\\(反斜線)和 NULL 字元轉移。 PHP稱之為魔術引號,這三項設置分別是 magic_quotes_gpc 影響到 HTTP 請求數據(GET,POST 和 COOKIE)。
不能在運行時改變。在 PHP 中默認值為 on。 magic_quotes_runtime 如果打開的話,大部份從外部來源取得數據並返回的函數,包括從資料庫和文本文件,所返回的數據都會被反斜線轉義。該選項可在運行的時改變,在 PHP 中的默認值為 off。 magic_quotes_sybase 如果打開的話,將會使用單引號對單引號進行轉義而非反斜線。
此選項會完全覆蓋 magic_quotes_gpc。如果同時打開兩個選項的話,單引號將會被轉義成 」。而雙引號、反斜線 和 NULL 字元將不會進行轉義。
雖然方便的實現了對特殊符號的自動轉義,但是這樣會使得程序效率降低,並導致程序可移植變得麻煩。在不知道伺服器ini設置的情況下,還需要調用get_magic_quotes_gpc() ,get_magic_quotes_runtime() 或ini_get()來檢測狀態。使用stripslashes去掉轉義

閱讀全文

與phpmysql引號轉義字元相關的資料

熱點內容
壓縮因子定義 瀏覽:968
cd命令進不了c盤怎麼辦 瀏覽:214
葯業公司招程序員嗎 瀏覽:974
毛選pdf 瀏覽:659
linuxexecl函數 瀏覽:727
程序員異地戀結果 瀏覽:374
剖切的命令 瀏覽:229
干什麼可以賺錢開我的世界伺服器 瀏覽:290
php備案號 瀏覽:990
php視頻水印 瀏覽:167
怎麼追程序員的女生 瀏覽:487
空調外壓縮機電容 瀏覽:79
怎麼將安卓變成win 瀏覽:459
手機文件管理在哪兒新建文件夾 瀏覽:724
加密ts視頻怎麼合並 瀏覽:775
php如何寫app介面 瀏覽:804
宇宙的琴弦pdf 瀏覽:396
js項目提成計算器程序員 瀏覽:944
pdf光子 瀏覽:834
自拍軟體文件夾名稱大全 瀏覽:328