/** * @return array */ public function display() { $hide = true; if (Ip::isAdmin() || Ip::isLocal()) { $hide = false; } if ($this->code == 500 && $hide) { return ['status' => $this->code, 'message' => 'Internal server error']; } $return = ['status' => $this->code, 'message' => $this->message]; if ($this->getPrevious()) { if (isset($return['message'])) { $message = $return['message']; } $return = array_merge($return, $this->export($this->getPrevious())); if (isset($message) && $message) { $return['message'] = $message; } if ($this->getPrevious()->getPrevious()) { $return['previous'] = $this->export($this->getPrevious()->getPrevious()); } } return $return; }