首页 > 代码库 > PHP中extract()函数的妙用

PHP中extract()函数的妙用

看cakephp 2.3.8的源代码,很多地方都用 到

  compact(‘name‘, ‘response‘); 

extract($status, EXTR_OVERWRITE);

这样的代码。compact()函数之前有查过, extract()函数用的比较少。 原来extract()是将数组的 “解开”成一个一个散开的变量,哈哈哈!!!

----------------------------------------------------------------------------------

参考:http://www.php100.com/html/webkaifa/PHP/PHPyingyong/2009/0723/3090.html

近日在看一个牛人的代码时,看到一个非常好用的函数:extract(),它的主要作用是将数组展开,键名作为变量名,元素值为变量值,可以说为数组的操作提供了另外一个方便的工具,比方说,可以很方便的提取$_POST或者$_GET的元素,对表单提交上来的内容不能不用一一赋值,直接使用下面代码:

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‘];
?>

是不是很方便呢?呵呵

PHP中extract()函数的妙用