home
/
zktecojo
/
public_html
/
vendor
/
filp
/
whoops
/
src
/
Whoops
/
Handler
➕ New
📤 Upload
✎ Editing:
JsonResponseHandler.php
← Back
<?php /** * Whoops - php errors for cool kids * @author Filipe Dobreira <http://github.com/filp> */ namespace Whoops\Handler; use Whoops\Exception\Formatter; /** * Catches an exception and converts it to a JSON * response. Additionally can also return exception * frames for consumption by an API. */ class JsonResponseHandler extends Handler { /** * @var bool */ private $returnFrames = false; /** * @var bool */ private $onlyForAjaxRequests = false; /** * @param bool|null $returnFrames * @return bool|$this */ public function addTraceToOutput($returnFrames = null) { if (func_num_args() == 0) { return $this->returnFrames; } $this->returnFrames = (bool) $returnFrames; return $this; } /** * @param bool|null $onlyForAjaxRequests * @return null|bool */ public function onlyForAjaxRequests($onlyForAjaxRequests = null) { if (func_num_args() == 0) { return $this->onlyForAjaxRequests; } $this->onlyForAjaxRequests = (bool) $onlyForAjaxRequests; } /** * Check, if possible, that this execution was triggered by an AJAX request. * * @return bool */ private function isAjaxRequest() { return ( !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'); } /** * @return int */ public function handle() { if ($this->onlyForAjaxRequests() && !$this->isAjaxRequest()) { return Handler::DONE; } $response = array( 'error' => Formatter::formatExceptionAsDataArray( $this->getInspector(), $this->addTraceToOutput() ), ); if (\Whoops\Util\Misc::canSendHeaders()) { header('Content-Type: application/json'); } echo json_encode($response); return Handler::QUIT; } }
💾 Save Changes
Cancel
📤 Upload File
×
Select File
Upload
Cancel
➕ Create New
×
Type
📄 File
📁 Folder
Name
Create
Cancel
✎ Rename Item
×
Current Name
New Name
Rename
Cancel
🔐 Change Permissions
×
Target File
Permission (e.g., 0755, 0644)
0755
0644
0777
Apply
Cancel