php和MySQL轉(zhuǎn)義字符的深入研究
以下的文章主要介紹的是關(guān)于php和MySQL轉(zhuǎn)義字符的深入研究,我們大家在設(shè)置相關(guān)文件中,會(huì)遇到一項(xiàng)magic quotes,其是默認(rèn)是打開的,而推薦卻是關(guān)閉。我們起初按照默認(rèn)設(shè)置,以為這樣開發(fā)起來更省事,實(shí)際情況也是這樣。
等到程序?qū)W到一定程度,逐漸傾向于將該選項(xiàng)關(guān)閉。
這樣做的好處是,使程序更有邏輯和容易控制。上述選項(xiàng)打開后,php會(huì)對(duì)單引號(hào)',雙引號(hào)",反斜杠/,空字串null進(jìn)行轉(zhuǎn)義,分別替換為:\' \" \\ \0,這樣的好處是提高安全性,防止注入攻擊。不過這很容易通過程序來完成。
MySQLl寫入數(shù)據(jù)庫時(shí),必須對(duì)字串進(jìn)行處理,需要對(duì)上述4種字符進(jìn)行轉(zhuǎn)義,這樣如果設(shè)置了magic quotes為on,那么無需再轉(zhuǎn)義,表面上似乎省事了,實(shí)際上卻是容易混淆和造成邏輯上的混亂。所以藍(lán)草推薦將magic quotes設(shè)置為off關(guān)閉。對(duì)于MySQLl轉(zhuǎn)義字符通過寫個(gè)簡單的轉(zhuǎn)義函數(shù)來處理。這樣會(huì)更容易控制php和操控MySQLl。
以上的相關(guān)內(nèi)容就是對(duì)關(guān)于php與MySQLl轉(zhuǎn)義字符的研究的介紹,望你能有所收獲。
【編輯推薦】