【发布时间】:2018-03-01 18:35:36
【问题描述】:
如果我的实例中有意外的数组定义,如何使用魔术方法 __set 访问给定的数组 NAME?
例如我想回显提交的数组名称:
class App {
__set(){
// echo array name
}
$app = new App();
$app->arrayName->['key'=>'val'];
如何回显arrayName或为提交的数组设置新名称?
【问题讨论】:
如果我的实例中有意外的数组定义,如何使用魔术方法 __set 访问给定的数组 NAME?
例如我想回显提交的数组名称:
class App {
__set(){
// echo array name
}
$app = new App();
$app->arrayName->['key'=>'val'];
如何回显arrayName或为提交的数组设置新名称?
【问题讨论】:
__set()有两个参数,名称和值,见PHP : Property Overloading:
public function __set($name, $value){
if(is_array($value)) { echo "$name is an array"; }
}
然后设置数组:
$app = new App();
$app->arrayName = ['key'=>'val'];
然后__set() 将显示arrayName is an array。
【讨论】: