分析PHP中单双引号的误区和双引号小隐患

yipeiwu_com6年前PHP代码库

许多程序员以为在PHP中单引号和双引号是一样的,其实这要看怎么用法,在有些方面它们确实是一样,但有一些方面它们也有着很大的区别,今天小编就来为您说说有哪些区别。

1、一般情况下两者是通用的.但如果双引号内写的是变量就会执行解析操作,而单引号则不解析,这个怎么说?还是举个例子吧。

这下看明白了吧!

2、执行效率不一样,单引号的执行速度要比双引号的执行速度快,如果是一样大型的程序,这方面还是要注意优化的,毕竟PHP属于解释型语言。所以如果内部只有纯字符串的时候,用单引号(速度快),内部有别的东西(如变量)的时候,用双号引会更灵活些。

PHP双引号小隐患

PHP很多语法特性会让攻击者有机可乘,例如PHP会检测双引号中的变量。

执行如下代码:

function test()
{
 echo "abc";
}
echo "${@test()}";
 
//或者

 echo ${@phpinfo()};

原理如下:

$a = 'b';
$b = 'a';
 
echo $$a; //a

以上就利用了PHP可变变量,双引号{}可解析双引号内的变量内容特性制造出来的小麻烦。 大家看懂了吗?这些误区和小隐患程序员们在平时要多多注意了。

相关文章

深入php数据采集的详解

这里介绍两个php采集能用到的好工具。一个是Snoopy,一个是simple_html_dom。采集还有很多方式(其实本质就2-3种,其他的都是衍生的),php自带了几个方法也能直接进行...

php中将html中的br换行符转换为文本输入中的换行符

下面这几个方法将能够帮你解决这个问题。 PHP版将html中的<br />换行符转换为文本框中的换行符: 复制代码 代码如下:function br2nl($text){&n...

PHP对XML内容进行修改和删除实例代码

PHP对XML内容进行修改和删除实例代码

本文主要介绍的是PHP对XML内容进行修改和删除的方法,下面话不多说,我们来看实例 原理图如下 示例代码 example.xml <?xml version="1...

php 上传功能实例代码

1.上传表单 upload.html 复制代码 代码如下: <form enctype="multipart/form-data" action="upload.php" meth...

PHP对文件夹递归执行chmod命令的方法

本文实例讲述了PHP对文件夹递归执行chmod命令的方法。分享给大家供大家参考。具体分析如下: 这里对文件夹和文件递归执行chmod命令来改变执行权限 <?php...