Server IP : 66.29.132.124 / Your IP : 3.15.12.133 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/facade/ignition/src/Views/Concerns/ |
Upload File : |
<?php namespace Facade\Ignition\Views\Concerns; use Illuminate\Foundation\Application; use Illuminate\Support\Collection; use Illuminate\View\Engines\CompilerEngine; trait CollectsViewExceptions { protected $lastCompiledData = []; public function collectViewData($path, array $data): void { $this->lastCompiledData[] = [ 'path' => $path, 'compiledPath' => $this->getCompiledPath($path), 'data' => $this->filterViewData($data), ]; } public function filterViewData(array $data): array { // By default, Laravel views get two shared data keys: // __env and app. We try to filter them out. return array_filter($data, function ($value, $key) { if ($key === 'app') { return ! $value instanceof Application; } return $key !== '__env'; }, ARRAY_FILTER_USE_BOTH); } public function getCompiledViewData($compiledPath): array { $compiledView = $this->findCompiledView($compiledPath); return $compiledView['data'] ?? []; } public function getCompiledViewName($compiledPath): string { $compiledView = $this->findCompiledView($compiledPath); return $compiledView['path'] ?? $compiledPath; } protected function findCompiledView($compiledPath): ?array { return Collection::make($this->lastCompiledData) ->first(function ($compiledData) use ($compiledPath) { $comparePath = $compiledData['compiledPath']; return realpath(dirname($comparePath)).DIRECTORY_SEPARATOR.basename($comparePath) === $compiledPath; }); } protected function getCompiledPath($path): string { if ($this instanceof CompilerEngine) { return $this->getCompiler()->getCompiledPath($path); } return $path; } }