php extract函数用于自动接收_GET_POST及数组内容直接当变量使用

$pfz=$_GET['pfz'];
$aid=$_GET['id'];

通常我们会用上面的方式接收数据
有时候你会发现对方不用上面的_GET读取提交的数据,直接将提交过来的数据成员当变量来使用
这是因为_GET本身就是一个数组,所以对方使用extract来接收_GET内容,使用方法
extract($_GET);
extract($_POST);
这样使用,提交过来的数据,会被自动按提交的成员名称变成变量来使用,如这里我们提交了
mypf.php?aid="+id+"&pfz="+pfz 
其中有aidpfz两个成员,使用extract后,我们就可以在网页中将aidpfz当变量来使用,即:$aid$pfz
这种方式要比在页面中使用GET更方便

看上面的不好明白,没关系,我们上几个例子:

第一个例子:


<?php 
$a = 'Original'; 
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse"); 
extract($my_array); 
echo "\$a = $a; \$b = $b; \$c = $c"; 
?> 

输出结果:

$a = Cat; 
$b = Dog; 
$c = Horse;

第二个例子:


<?php 
$a = 'Original'; 
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse"); 

extract($my_array, EXTR_PREFIX_SAME, 'dup'); 

echo "\$a = $a; \$b = $b; \$c = $c; \$dup_a = $dup_a;"; 
?> 
输出结果:

$a = Original;
$b = Dog;
$c = Horse;
$dup_a = Cat; 

第三个例子:


提交页面:mypf.php?aid="+id+"&pfz="+pfz 

<?php 
extract($_POST); 
//相当于$pf=$_GET['pfz'];
//$id=$_GET['aid'];
?> 

通过上面的读取后,我们在页面中直接使用

$pfz$aid两个变量即可。

评论

大侠名号:   验证暗号: 点击我更换图片

修远兮

在这里记录每一点自己需要的知识

添加创始人微信,一起交流心得

推荐文章RECOMMEND