首页 > php代码 > PHP EXTRACT函数将字段变成变量的例子

PHP EXTRACT函数将字段变成变量的例子

EXTRACT函数功能比较强大了可以直接把接受到的字符变成变量了,初次知道此函数是一个同事使用这种方法来接受数据了,下面我们来看关于EXTRACT的用法.

PHP extract函数的作用是:函数从数组中把变量导入到当前的符号表中。对于数组中的每个元素,键名用于变量名,键值用于变量值。用extract函数一个技巧是可以把字段变成变量,方便调用。

$info = $this->db->get_one(array('id'=>$specialid, 'disabled'=>0)); 

//将当前专题id所对应的字段作为变量导入到当前的符号表 

extract($info);

本例$info是从数据库查出的结果,以数组的形式作为变量,键名是字段名,值是字段值,使用extract函数就把键名作为变量名,字段值作为变量值了。

比如array('name'=>'zhangsan','sex'=>'man','id'=>3232);

那么extract($array)后,就可以直接使用$name,$sex,$id了。

再看

<?php 

$size = "old size"; //注意最后size变量的值。 

$a = array( 

"color" => "red", 

"size" => "XXL", 

"price" => "53"); 

extract($a); 

echo "color = $color<br />"; 

echo "size = $size<br />"; 

echo "price = $price<br />"; 

?>

结果为:

color = red 

size = XXL 

price = 53

通过上例发现$size的值为XXL,而不是之前的"old size",说明默认情况下当数组中的key与已有的变量冲突时,将覆盖原来的变量。

例子

form.html

<form action="action.php" method="post"> 

<input type="text" name="username"> 

<input type="password" name="password"> 

<input type="submit">

在action.php中只要使用extract()函数将$_POST全局数据解开: 

action.php

<?php 

extract($_POST); 

//相当于$username = $_POST['username']; 

//$password = $_POST['password']; 

?>

是不是很方便呢?

extract的作用分析

addslashes -- 使用反斜线引用字符串     

extract(addslashes($_POST)); --处理POST表单 

把客户端<FORM METHOD="POST"...>表单中的变量名取出来。     

extract(addslashes($_GET)); --处理GET表单     

把客户端<FORM METHOD="GET"...>表单中的变量名取出来。  


本文地址:http://www.phprm.com/code/78402.html

转载随意,但请附上文章地址:-)

标签:none

发表留言