static function arrayGet(&$var, $key, $default = null) {
        $toks = explode('.', $key);
        
        for ($i = 0; $i < count($toks); $i++) {
            $var = &$var[$toks[$i]];
        }
        
        return is_array($var) || is_object($var)
                ? json_decode(json_encode($var))
                : (is_null($var) && !is_null($default) ? $default : $var);
    }
static function arrayGet(&$var, $key, $default = null) {
        $toks = explode('.', $key);
        
        for ($i = 0; $i < count($toks); $i++) {
            $var = &$var[$toks[$i]];
        }
        
        return is_array($var) || is_object($var)
                ? json_decode(json_encode($var))
                : (is_null($var) && !is_null($default) ? $default : $var);
    }
static function arrayGet ( & $ var , $ key , $ default = null ) { $ toks = explode ( '.' , $ key ) ; for ( $ i = 0 ; $ i < count ( $ toks ) ; $ i ++ ) { $ var = & $ var [ $ toks [ $ i ] ] ; } return is_array ( $ var ) || is_object ( $ var ) ? json_decode ( json_encode ( $ var ) ) : ( is_null ( $ var ) && ! is_null ( $ default ) ? $ default : $ var ) ; }
Array get using dots to traverse keys

@example

$arr = ['test' => ['word' => 'hello']];
print_r(arrayGet($arr, 'test.word'));

@access  public
@param   array   $var    Local declared variable
@param   string  $key    Key
@param   mixed   $default    Default value if $key isn't existing
@return  mixed
Array get using dots to traverse keys