很多站长朋友们都不太清楚php转义的问题,今天小编就来给大家整理php转义的问题,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP如何处理转义的问题。 2、 PHP 单引号,双引号与转义的问题 3、 关于php文本域中 html标签转义的问题,望大家帮忙解决看看 4、 如何在PHP中转义正则表达式字符 5、 php 单双引号与转义的问题 PHP如何处理转义的问题。‘aasdf|asdas\1022’ 简单点这样就可以了。。。
文件里读出来的输出不会有任何问题啊
PHP 单引号,双引号与转义的问题单引号和双引号都会对字符串进行转义。转义是对内容的进行安全过滤。但而单双号与双引号主要的区别是在解析时有没有进行变量解析。
关于php文本域中 html标签转义的问题,望大家帮忙解决看看经本人测试,据我的理解,问题的原因应该不是脚本的问题,你用firebug进行观察会发现,当你传送post的时候,其中的html文本域内容已经进行了编码,但这个编码会在你脚本运行之前进行还原,所以,不会影响你的正则脚本运算。
据我的估计,原因在于:你在输入正则表达式的时候,可能不是太正确。以下是我的测试过程:
运行访问你的脚本,在文本域里将你的脚本源代码粘上,再在正则表达输入框里输入:
%<input
type(.*)/>%si
你查看网页源代码,其输出结果如下:
<pre>Array
(
[0]
=>
Array
(
[0]
=>
<input
type="submit"
name="button"
value="提交"
/>
)
[1]
=>
Array
(
[0]
=>
="submit"
name="button"
value="提交"
)
)
</pre>
说明,还是匹配到了html标签。
而第1个匹配项,在浏览器里会显示为一个html按钮,原因在于这是正规的html语句,所以,浏览器会将这个表现出来。
如何在PHP中转义正则表达式字符在PHP中,实现转义正则表达式字符的函数是:preg_quote函数。语法如下:
Stringpreg_quote(stringstr[,stringdelimiter])
Str是用来进行字符转义的正则表达式,delimiter是其他需要转义的字符。
在PHP中可以使用preg_quote函数转义一些特殊字符。
例如:
<?php
$str=preg_quote(“/\d{3}(\-\d{4})/”);echo$str;?>
结果:
/\\d\{3\}\-d{4}\-d{4}/
<?php
$str=preg_quote(“/\d{3}(\-\d{4})/”,”3“);echo$str;?>
结果:
/\\d\{\3\}\-d{4}\-d{4}/
这两个例子有什么区别呢?
就是红色区域中的“3”,在第二个例子中将“3”也转义出了。
php 单双引号与转义的问题在单引号串中反斜线失去了它的扩展含义(除了添入反斜杠\\和添入单引号\')。所以,当你想在字串中进行变量代换和包含\n(换行符)等转义序列时,你应该使用双引号。
所以单引号不会转义,\\只是添加了一个\,这个类似\' 添加了一个单引号。
关于php转义的问题的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php转义的问题 php转义特殊字符的函数的详细内容...