PHP中addcslashes與stripcslashes函數(shù)用法分析
本文實(shí)例分析了PHP中addcslashes與stripcslashes函數(shù)用法。分享給大家供大家參考,具體如下:
在寫一個(gè)網(wǎng)站的英文版時(shí),寫完后填加英文資料,我隨便填寫時(shí)一點(diǎn)問(wèn)題沒有,但每當(dāng)填加指定的內(nèi)容時(shí)卻填加不上,也不報(bào)錯(cuò),我查看了數(shù)據(jù)庫(kù),發(fā)現(xiàn)這個(gè)字段用的是“TEXT”數(shù)據(jù)數(shù)型,我以為是內(nèi)容過(guò)長(zhǎng)的原因,于是我把數(shù)據(jù)類型改成了“l(fā)ongtext”,但提交時(shí)發(fā)現(xiàn)還是出現(xiàn)同樣的問(wèn)題。下面我們給大家介紹一下addcslashes函數(shù)吧!
后來(lái)請(qǐng)教同事,同事發(fā)現(xiàn)在是英文中帶標(biāo)點(diǎn)“'”的原因,MySQL執(zhí)行到此處后自動(dòng)認(rèn)為語(yǔ)句結(jié)束,所以才填加不上。既然找出來(lái)了問(wèn)題那就得找出對(duì)應(yīng)的解決方法,那就是在文本內(nèi)容中的“'”前全部加上轉(zhuǎn)義字符“\”,正好PHP中提供了自動(dòng)在字符串中加入或去除轉(zhuǎn)義字符的函數(shù)addcslashes和stripcslashes,于是加上測(cè)試后,果然問(wèn)題解決!由此可見,我平日寫程序時(shí)不夠嚴(yán)禁,總是會(huì)忽略這樣那樣的細(xì)節(jié)問(wèn)題,如果被HACKER發(fā)現(xiàn)這些問(wèn)題加一利用,網(wǎng)站基本就OVER了,所以大家一定要引以為戒,不要和我犯同樣的錯(cuò)誤哦。
下面簡(jiǎn)單介紹這兩個(gè)函數(shù)的用法:
string addcslashes(string str,string charlist)
第1個(gè)參數(shù)str為待失物原始字符串
第2個(gè)參數(shù)charlist說(shuō)明需要在原始串的哪些字符前加上字符 “\”。
string stripcslashes(string str)
去掉字符串中的“\”。
另外,使用addslashes函數(shù)也可直接針對(duì)“'”進(jìn)行轉(zhuǎn)義處理。
示例如下:
<?php $sql = "update book set bookname='let's go' where bookid=1"; echo $sql."<br/>"; $new_sql = addcslashes($sql,"'"); echo $new_sql."<br/>"; $new_sql_01 = stripcslashes($new_sql); echo $new_sql_01."<br/>"; echo addslashes($sql); ?>
運(yùn)行結(jié)果如下:
update book set bookname='let's go' where bookid=1 update book set bookname=\'let\'s go\' where bookid=1 update book set bookname='let's go' where bookid=1 update book set bookname=\'let\'s go\' where bookid=1
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- PHP中addslashes()和stripslashes()實(shí)現(xiàn)字符串轉(zhuǎn)義和還原用法實(shí)例
- php中addslashes函數(shù)與sql防注入
- PHP中使用addslashes函數(shù)轉(zhuǎn)義的安全性原理分析
- PHP關(guān)于htmlspecialchars、strip_tags、addslashes的解釋
- PHP函數(shù)addslashes和mysql_real_escape_string的區(qū)別
- php stripslashes和addslashes的區(qū)別
- 解析php addslashes()與addclashes()函數(shù)的區(qū)別和比較
- php daddslashes()和 saddslashes()有哪些區(qū)別分析
- php addslashes及其他清除空格的方法是不安全的
- php addslashes和mysql_real_escape_string
- php addslashes 函數(shù)詳細(xì)分析說(shuō)明
相關(guān)文章
PHP實(shí)現(xiàn)按之字形順序打印二叉樹的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)按之字形順序打印二叉樹的方法,涉及php結(jié)合棧遍歷二叉樹的相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
php 獲取頁(yè)面中指定內(nèi)容的實(shí)現(xiàn)類
本文為大家下使用php如何獲取頁(yè)面中的指定內(nèi)容,而且以封裝成類,需要的朋友可以參考下本文2014-01-01
PHP CURLFile函數(shù)模擬實(shí)現(xiàn)文件上傳示例詳解
這篇文章主要介紹了PHP使用CURLFile函數(shù)模擬實(shí)現(xiàn)文件上傳,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-09-09
PHP實(shí)現(xiàn)讀取Excel文件的記錄(二)
在前文中介紹的方法有些麻煩,因?yàn)楸仨氁虞d很多的文件。本文介紹的方法簡(jiǎn)單了很多,只需要加載兩個(gè)文件即可。需要的可以參考一下2022-03-03

