php 动态创建属性

才知道php可以动态创建属性,可以和javascript一样.

class Book{
        public $name;
        public function __construct($name) {
                $var=  func_get_arg(0);
                if(is_int($var)){
                        $this->name="12345".$name;
                }
                if(is_string($name)){
                          $this->name=$name;
                }
              
        }
        
}

class Main{
        
        public static  function createbook($class,$config=null){
                return new $class($config);
        }
        public function config($config){
                if(is_array($config)){
                        foreach($config  as $key=>$val){
                                $this->$key=$val;
                        }
                }
        }
}
$config=array(
                         'name'=>'My Web Application',
);
$main=new Main();
$main->config($config);
  echo  $main->name;

 结果将输出"My Web Application";

 

而且php的重载是通过func_get_arg(0) ,func_num_args()来实现的.

你可能感兴趣的:(php)