大佬教程收集整理的这篇文章主要介绍了转义字符串是什么意思?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
转义字符串意味着减少该字符串中使用的引号(和其他字符)的歧义。例如,定义字符串时,通常将其用双引号或单引号引起来:
"Hello World."
但是,如果我的字符串中包含双引号怎么办?
"Hello "World.""
现在我有歧义-解释器不知道我的字符串在哪里结束。如果要保留双引号,则有两种选择。我可以在字符串周围使用单引号:
'Hello "World."'
或者,我可以避免引用:
"Hello \"World.\""
任何以斜杠开头的引号均会 转义 ,并应理解为字符串值的一部分。
当涉及查询时,MysqL会监视某些关键字,这些关键字我们不能在查询中使用而不会引起混淆。假设我们有一个值表,其中一列名为“选择”,我们想选择该值:
SELECT SELEct FROM myTable
现在,我们在查询中引入了一些歧义。在我们的查询中,我们可以通过使用反引号来减少歧义:
SELECT `SELEct` FROM myTable
这消除了我们在选择字段名称时缺乏判断力而引起的混乱。
只需将值传递给即可为您解决很多问题@H_831_5@mysql_real_escape_String()。在下面的示例中,您可以看到我们正在通过此函数传递用户提交的数据,以确保它不会对我们的查询造成任何问题:
// query
$query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'",
MysqL_real_escape_String($user),
MysqL_real_escape_String($password));
其他方法转义字符串,如存在add_slashes
,addcslashes
,quoteMeta
,和更多的,但你会发现,当我们的目标是运行安全的查询,由大开发商喜欢@H_831_5@mysqL_real_escape_String或pg_escape_String
(在postgresql中的上下文。
我在阅读$ _SESSION
[‘username’]进入sQL查询之前是否需要转义?它说:“无论源如何,都需要对传递给sql查询的每个字符串进行转义”。现在我知道类似这样的事情是非常基本的。Google搜索显示超过20,000个结果。仅Stackoverflow就有20页的结果,但是没有人实际解释转义字符串是什么或如何转义。只是假设。你能帮助我吗?我想学习,因为我一如既往地使用php制作网络应用。
我看过: 插入转义字符,Java中所有的转义字符是什么?,不能
使用addcslashes()转义字符串,
转义字符,
mysql_real_escape_String()的作用是什么?,
如何在php的字符串中转义双引号?,
MySQL_real_escape_String不添加斜杠?,
我可以继续从php中的字符串中删除转义序列,但是我确定你明白了。这不是懒惰。
以上是大佬教程为你收集整理的转义字符串是什么意思?全部内容,希望文章能够帮你解决转义字符串是什么意思?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。