php stripslashes和addslashes的区别
我们在向mysql写入数据时,比如: 代码如下:mysql_query("update table set `title`='kuhanzhu's blog'"); PHP为了安全性,所以引入了个 magic_quotes_gpc = On的功能,可以不需要做任何处理就能直接把单引号插入数据库中,那么对于Off时,则需要考虑单引号的问题了,而不是一味地信任运行环境。当 magic_quotes_gpc = On时,使用了处理后的数据在数据库中将以'形式保存,如果此时直接输出的话,就会发现比自己期待的内容多了个,因此出场了,它能把去掉(区别于str_replace(””,“”,$Str))。当 magic_quotes_gpc = Off时,使用了处理后的数据在数据库中将以'形式保存,没有上面说的有的问题,addslashes()起到插入数据不出错的作用,如果此时直接输出的话,数据正常。不需要再用addslashes()和stripslashes()正好是相反的,直接记忆:addslashes()加个,stripslashes()去个 那么什么时候用呢? 当magic_quotes_gpc = On时,系统会自动处理单引号等问题,用不用addslashes()和stripslashes()都没关系,但是如果添加数据时用了addslashes(),那么显示数据时必须要stripslashes()当magic_quotes_gpc = Off时,系统不会处理单引号等问题,所以插入数据时必须要使用addslashes(),显示数据时则不需要使用stripslashes()。既然有了分析,做程序时要怎么办呢?根据以上两种情况,可得: 如何判断On还是Off呢?用get_magic_quotes_gpc()。 最后举例: 代码如下:代码 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |