MySQL轉(zhuǎn)義字符的實(shí)際應(yīng)用
我們今天主要描述的是php和MySQL轉(zhuǎn)義字符,我們大家都知道php和MySQL轉(zhuǎn)義字符的實(shí)際應(yīng)用比例還是占為多數(shù)的,如果你對(duì)這一技術(shù),心存好奇的話,以下的文章將會(huì)揭開它的神秘面紗。
php和MySQL轉(zhuǎn)義字符的詳細(xì)研究,在設(shè)置文件中,有一項(xiàng)magic quotes,其默認(rèn)是打開的,推薦是關(guān)閉。起初按照默認(rèn)設(shè)置,以為這樣開發(fā)起來(lái)更省事,實(shí)際情況也是這樣。
等到程序?qū)W到一定程度,逐漸傾向于將該選項(xiàng)關(guān)閉。
這樣做的好處是,使程序更有邏輯和容易控制。上述選項(xiàng)打開后,php會(huì)對(duì)單引號(hào)',雙引號(hào)",反斜杠/,空字串null進(jìn)行轉(zhuǎn)義,分別替換為:\' \" \\ \0,這樣的好處是提高安全性,防止注入攻擊。不過這很容易通過程序來(lái)完成。
MySQL寫入數(shù)據(jù)庫(kù)時(shí),必須對(duì)字串進(jìn)行處理,需要對(duì)上述4種字符進(jìn)行轉(zhuǎn)義,這樣如果設(shè)置了magic quotes為on,那么無(wú)需再轉(zhuǎn)義,表面上似乎省事了,實(shí)際上卻是容易混淆和造成邏輯上的混亂。所以藍(lán)草推薦將magic quotes設(shè)置為off關(guān)閉。對(duì)于MySQL轉(zhuǎn)義字符通過寫個(gè)簡(jiǎn)單的轉(zhuǎn)義函數(shù)來(lái)處理。這樣會(huì)更容易控制php和操控MySQL。
以上的相關(guān)內(nèi)容就是對(duì)MySQL轉(zhuǎn)義字符的研究的介紹,望你能有所收獲。
【編輯推薦】
- MySQL MyISAM引擎和InnoDB引擎的性能測(cè)試
- MySQL存儲(chǔ)引擎中InnoDB與MyISAM的不同之處
- MySQL text與blob字段類型的不同之處
- MySQL聯(lián)表查詢優(yōu)化實(shí)際操作流程
- MySQL left join 聯(lián)合查詢的效率分析