Server IP : 66.29.132.124 / Your IP : 3.144.104.175 Web Server : LiteSpeed System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : wavevlvu ( 1524) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/wavevlvu/book24.ng/vendor/barryvdh/laravel-debugbar/src/Storage/ |
Upload File : |
<?php namespace Barryvdh\Debugbar\Storage; use DebugBar\Storage\StorageInterface; class SocketStorage implements StorageInterface { protected $hostname; protected $port; protected $socket; /** * @param string $hostname The hostname to use for the socket * @param int $port The port to use for the socket */ public function __construct($hostname, $port) { $this->hostname = $hostname; $this->port = $port; } /** * @inheritDoc */ function save($id, $data) { $socketIsFresh = !$this->socket; if (!$this->socket = $this->socket ?: $this->createSocket()) { return false; } $encodedPayload = json_encode([ 'id' => $id, 'base_path' => base_path(), 'app' => config('app.name'), 'data' => $data, ]); $encodedPayload = strlen($encodedPayload) . '#' . $encodedPayload; set_error_handler([self::class, 'nullErrorHandler']); try { if (-1 !== stream_socket_sendto($this->socket, $encodedPayload)) { return true; } if (!$socketIsFresh) { stream_socket_shutdown($this->socket, \STREAM_SHUT_RDWR); fclose($this->socket); $this->socket = $this->createSocket(); } if (-1 !== stream_socket_sendto($this->socket, $encodedPayload)) { return true; } } finally { restore_error_handler(); } } private static function nullErrorHandler($t, $m) { // no-op } protected function createSocket() { set_error_handler([self::class, 'nullErrorHandler']); try { return stream_socket_client("tcp://{$this->hostname}:{$this->port}"); } finally { restore_error_handler(); } } /** * @inheritDoc */ function get($id) { // } /** * @inheritDoc */ function find(array $filters = array(), $max = 20, $offset = 0) { // } /** * @inheritDoc */ function clear() { // } }