public function __construct($data = array()) { if ($data && is_string($data) && file_exists($data)) { $data = $this->_decode($data); } parent::__construct($data ? (array) $data : array()); }