PHP可变变量($$)
1、含义:两个 $$ 是 可变变量,就是一个变量的变量名可以动态的设置和使用。
$a = 'hello';
$hello = 'world';
echo "$a ${$a}"; // hello world 必需加花括号:{}如果不加则是会输出变量名
echo "$a $hello"; // hello world
2、注意:
要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,
解析器需要知道是想要 $a[1] 作为一个变量呢,
还是想要 $$a 作为一个变量并取出该变量中索引为 [1] 的值。
解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。
3、使用场景:POST提交表单数据,校验参数是否缺失!
public function validateParam(){
$user_id = isset($_POST['user_id']) ? $_POST['user_id'] : '';
$name = isset($_POST['name']) ? $_POST['name'] : '';
$type = isset($_POST['type']) ? $_POST['type'] : '';
$remark = isset($_POST['remark']) ? $_POST['remark'] : '';
$initParams = ["user_id", "name", "type", "remark"]; //定义需要校验的字段
foreach ($initParams as $v){
if(empty($$v)) die("参数{$v}缺失!");
}
}
4、参考地址:
PHP可变变量文档: http://www.php.net/manual/zh/language.variables.variable.php
PHP 大括号{} 的使用 https://blog.csdn.net/qq_36025814/article/details/83660004