PHP的可变变量

PHP的可变变量
先看下列代码以及执行结果。
<?php
      $v1 ="";
      $flute ="v1";
      $$flute ="Apple";
      echo ("Thereis an ${$flute}.<br />");
      echo ("Thereis an $v1.<br />");
?>
程序运行结果如下:
There is an Apple.
There is an Apple.

从上面看出,变量$flute的初始值等于v1,在该变量前再加个$,然后对其进行赋值,则相当于给变量$v1赋值。而从结果可以看出,最后$v1的值等于${flute}。

实战情况举例如下:
1、获取传入的参数
假设一个场景:
有两个通过POST传递的参数:v1和v2;若在程序中接受这两个参数值需要些如下代码:
$v1 = $_POST["v1"];
$v2 = $_POST["v2"];
若需要接收20个或者更多的参数时,这段代码要写很长。那么有什么方便的方式呢?
我们可以用下列代码来实现:
foreach($_POST as $key=>$value){
  $$key=$value;
}
上述代码实现了遍历所有POST传入的参数,并将值传递给与key相同的变量名。

2、动态指定对象的属性
如下程序回显属性信息时,属性名称是由传入的参数$attr决定的。
<?php
      classstudent{
          public $name = "David";
          public $sex = "male";
      }

      functionshow($attr){
          $people = new student();
          echo ($people->$attr . "<br/>");
      }

      show("name");
      show("sex");
?>
程序执行结果如下:
David
male
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值