RSI helpers  0.1
RSI helpers
Record.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Rsi\Wrapper;
4 
5 class Record{
6 
7  public $data = null;
8 
9  public function __construct($data = null){
10  $this->data = $data ?: [];
11  }
12 
13  public function __get($key){
14  return array_key_exists($key,$this->data) ? (is_array($value = $this->data[$key]) ? new Record($value) : $value) : false;
15  }
16 
17  public function __set($key,$value){
18  $this->data[$key] = $value;
19  }
20 
21  public function __call($func_name,$params){
22  $result = false;
23  $params = array_merge([&$this->data],$params);
24  if(method_exists('\Rsi\Record',$func_name)) $result = call_user_func_array(['\Rsi\Record',$func_name],$params);
25  elseif(function_exists('array_' . $func_name)) $result = call_user_func_array('array_' . $func_name,$params);
26  else $result = call_user_func_array($func_name,$params);
27  return is_array($result) ? new Record($result) : $result;
28  }
29 
30 }
__construct($data=null)
Definition: Record.php:9
__set($key, $value)
Definition: Record.php:17
__call($func_name, $params)
Definition: Record.php:21