- Output for 5.4.9 - 5.4.45, 5.5.24 - 5.5.30, 5.6.8 - 5.6.15
- Parse error: syntax error, unexpected 'public' (T_PUBLIC) in /in/7cZps on line 34
Process exited with code 255.
<?php
class ObjContainer { }
function isArrayAssociative(array $array) {
return (bool) count(array_filter(array_keys($array), 'is_string'));
}
function Array2Obj(array $array) {
if(isArrayAssociative($array)) {
$obj = new ObjContainer;
foreach($array as $key => $val) {
if(is_array($val)) {
$obj->{$key} = Array2Obj($val);
}
else {
$obj->{$key} = $val;
}
}
return $obj;
}
else {
$array = array();
foreach($array as $val) {
if(is_array($val)) {
$array[] = Array2Obj($val);
}
else {
$array[] = $val;
}
}
return $array;
}
}
$array = array(
'myVar' => '',
'setVar' => public function setVar($arg) {
$this->myVar = $arg;
},
'getVar' => public function getVar() {
return $this->myVar;
}
);
$obj = Array2Obj($array);
$obj->{'setVar'}('foo');