PHP 可变变量。(PHP中使用可变变量实现自动处理表单)

来源:互联网 发布:js在对象里面添加数组 编辑:程序博客网 时间:2024/04/29 13:40

<?php
#php的可变变量
/*可变变量就是变量名可以动态的设置和使用的变量。
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。
因为普通变量的值是可变的,所以可变变量的变量名也是可变的。
*/
//可变变量适合在什么场合使用呢?
echo "<br/>";
echo "<br/>";
$a = "hello";//定义一个普通变量
$$a = "world";//定义一个可变变量
echo "$a/n";//output:hello
echo "${$a}/n";//使用可变变量, ${$a}可以这样理解 因为{$a}是等hello,而${$a}就相当于$hello,而${$a}本身是等于world

//同echo "$hello/n";//output:world
echo "$hello/n";
?>

般是用在什么场合下呢?例如:

<form action="test.php" method="post">
<table border="0">
<tr bgcolor="#cccccc">
<td width="150">Item</td>
<td width="15">Quantity</td>
</tr>
<tr>
<td>Tires</td>
<td align="center"><input type="text" name="tireqty" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>Oil</td>
<td align="center"><input type="text" name="oilqty" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>Spark Plugs</td>
<td align="center"><input type="text" name="sparkqty" size="3" maxlength="3" /></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Submit Order" /></td>
</tr>
</table>
</form>

//----------------------------------------------------------

一般情况下如果我要取oilqty,sparkqty,sparkqty这三个值,在PHP文件中应该这样子写

<?php
$oilqty = $_POST['oilqty'];
$tireqty = $_POST['tireqty'];
$sparkqty = $_POST['sparkqty'];

echo "<p>Your order is as follows:</p>";
echo "<br />/$oilqty=".$oilqty;
echo "<br />/$tireqty=".$tireqty;
echo "<br />/$sparkqty=".$sparkqty;
?>

现在有了这个可变变量可以这样子

<?php
foreach ($_POST as $key => $value) {
$$key = $value;
}

//这样一个写法就能取出所有的POS的值。


echo "<p>Your order is as follows:</p>";
echo "<br />/$oilqty=".$oilqty;
echo "<br />/$tireqty=".$tireqty;
echo "<br />/$sparkqty=".$sparkqty;
?>

原创粉丝点击