public function __construct() { parent::__construct(); // Clean up & update cached DB $pkgs = explode("\n\n", $this->pkgs); array_pop($pkgs); // remove file end $this->pkgs = []; for ($i = 0, $l = count($pkgs); $i < $l; $i++) { $pkg = explode("\n", $pkgs[$i]); // TODO: Figure out why `new stdClass()` doesn't work $new_pkg = (object) array(); foreach ($pkg as $datum) { $data = explode(': ', $datum); $new_pkg->{$data}[0] = $data[1]; } $this->pkgs[] = $new_pkg; } }