未定義のインデックスの影響を受けないようにする方法ArrayObj
、ロギングで未定義のインデックスの例を使用する必要がある場合があります
$this->log['some']['other']['info']++
これが私の試みです:
class arrayInSensitive extends \arrayObject{
var $data = array();
public function offsetGet($name) {
if(!array_key_exists($name,$this->data)) $this->data[$name]=new arrayInSensitive();
return $this->data[$name];
}
public function offsetSet($name, $value) {
$this->data[$name] = $value;
}
public function offsetExists($name) {
return (array_key_exists($name,$this->data));
}
public function offsetUnset($name) {
unset($this->data[$name]);
}
}
どうやってするの ?