首页 > PHP教程 > php开发知识文章

php可变变量的使用详解

这篇文章主要介绍了php可变变量使用详解的相关资料,希望通过本文大家能够掌握php 可变变量的使用方法,需要的朋友参考下

使用可变变量名是很方便的。就是说,一个变量的变量名能动态的设置和使用。一个普通的变量通过声明来设置,例如:

$a = 'hello';
$$a = 'world';
echo "$a ${$a}"; //输出 hello world
echo "$a $hello"; //输出 hello world

要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,

解析器需要知道是想要 $a[1] 作为一个变量呢,还是想要$$a 作为一个变量并取出该变量中索引为 [1] 的值。

解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。

类的属性也能通过可变属性名来访问。可变属性名将在该调用所处的范围内被解析。

如,对于 $foo->$bar 表达式,则会在本地范围来解析$bar 并且其值将被用于 $foo 的属性名。对于 $bar 是数组单元时也是一样。也可使用花括号来给属性名清晰定界。

在日常html的<form ...>POST过来很多变量需要处理的,一般我们会这样处理:

$id = $_POST['id'];
$name = $_POST['name'];
echo "<p>Your order is as follows:</p>";
echo "<br />/$id=" . $id;
echo "<br />/$name=" . $name;

如果POST过来很多变量,就需要写很多代码了,现在可变变量的用处来啦,我们这样写:

$array = array();
foreach ($_POST as $key => $value) {
$array[$$key] = $value;
}
print_r($array);

再来一个例子:

有class A和class B以及class C,他们都有自己的函数还是前端传值

$class = $_GET['class'];
$func = $_GET['func'];
$obj = new $class();
$obj->$func();

这是做单入口模式的思路!

php程序设计语言

以上就是本文php可变变量使用详解的全部内容,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。