InvalidArgumentException
View [web.pages.page.23] not found. InvalidArgumentException thrown with message "View [web.pages.page.23] not found." Stacktrace: #64 InvalidArgumentException in /home/perobot/www/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:137 #63 Illuminate\View\FileViewFinder:findInPaths in /home/perobot/www/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:79 #62 Illuminate\View\FileViewFinder:find in /home/perobot/www/vendor/laravel/framework/src/Illuminate/View/Factory.php:128 #61 Illuminate\View\Factory:make in /home/perobot/www/fanswoo-framework/fanswoo-framework/app/Support/Helpers/Helper.php:30 #60 show in /home/perobot/www/fanswoo-framework/fanswoo-framework/controllers/Web/BaseController.php:18 #59 FF\Controllers\Web\BaseController:show in /home/perobot/www/controllers/Web/PageController.php:84 #58 Controllers\Web\PageController:index in /home/perobot/www/fanswoo-framework/fanswoo-framework/controllers/Base/ControllerEncode.php:21 #57 call_user_func_array in /home/perobot/www/fanswoo-framework/fanswoo-framework/controllers/Base/ControllerEncode.php:21 #56 FF\Controllers\Base\ControllerEncode:callAction in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45 #55 Illuminate\Routing\ControllerDispatcher:dispatch in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Route.php:212 #54 Illuminate\Routing\Route:runController in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Route.php:169 #53 Illuminate\Routing\Route:run in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:625 #52 Illuminate\Routing\Router:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30 #51 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/fanswoo-framework/fanswoo-framework/app/Http/Middleware/Language.php:28 #50 FF\App\Http\Middleware\Language:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #49 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #48 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41 #47 Illuminate\Routing\Middleware\SubstituteBindings:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #46 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #45 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:67 #44 Illuminate\Foundation\Http\Middleware\VerifyCsrfToken:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #43 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #42 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49 #41 Illuminate\View\Middleware\ShareErrorsFromSession:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #40 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #39 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:63 #38 Illuminate\Session\Middleware\StartSession:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #37 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #36 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37 #35 Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #34 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #33 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:59 #32 Illuminate\Cookie\Middleware\EncryptCookies:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #31 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #30 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/fanswoo-framework/fanswoo-framework/app/Http/Middleware/WebPurviewCheck.php:29 #29 FF\App\Http\Middleware\WebPurviewCheck:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #28 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #27 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102 #26 Illuminate\Pipeline\Pipeline:then in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:627 #25 Illuminate\Routing\Router:runRouteWithinStack in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:586 #24 Illuminate\Routing\Router:dispatchToRoute in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Router.php:564 #23 Illuminate\Routing\Router:dispatch in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176 #22 Illuminate\Foundation\Http\Kernel:Illuminate\Foundation\Http\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30 #21 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30 #20 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #19 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #18 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30 #17 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #16 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #15 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27 #14 Illuminate\Foundation\Http\Middleware\ValidatePostSize:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #13 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #12 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:46 #11 Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #10 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #9 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:63 #8 Illuminate\Session\Middleware\StartSession:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #7 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #6 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:59 #5 Illuminate\Cookie\Middleware\EncryptCookies:handle in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149 #4 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #3 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102 #2 Illuminate\Pipeline\Pipeline:then in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151 #1 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /home/perobot/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116 #0 Illuminate\Foundation\Http\Kernel:handle in /home/perobot/www/public/index.php:53
Application frames (8) All frames (65)
64
InvalidArgumentException
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
FileViewFinder.php
137
63
Illuminate
\
View
\
FileViewFinder
findInPaths
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
FileViewFinder.php
79
62
Illuminate
\
View
\
FileViewFinder
find
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
Factory.php
128
61
Illuminate
\
View
\
Factory
make
/
fanswoo-framework
/
fanswoo-framework
/
app
/
Support
/
Helpers
/
Helper.php
30
60
show
/
fanswoo-framework
/
fanswoo-framework
/
controllers
/
Web
/
BaseController.php
18
59
FF
\
Controllers
\
Web
\
BaseController
show
/
controllers
/
Web
/
PageController.php
84
58
Controllers
\
Web
\
PageController
index
/
fanswoo-framework
/
fanswoo-framework
/
controllers
/
Base
/
ControllerEncode.php
21
57
call_user_func_array
/
fanswoo-framework
/
fanswoo-framework
/
controllers
/
Base
/
ControllerEncode.php
21
56
FF
\
Controllers
\
Base
\
ControllerEncode
callAction
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
ControllerDispatcher.php
45
55
Illuminate
\
Routing
\
ControllerDispatcher
dispatch
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
212
54
Illuminate
\
Routing
\
Route
runController
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
169
53
Illuminate
\
Routing
\
Route
run
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
625
52
Illuminate
\
Routing
\
Router
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
30
51
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
fanswoo-framework
/
fanswoo-framework
/
app
/
Http
/
Middleware
/
Language.php
28
50
FF
\
App
\
Http
\
Middleware
\
Language
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
49
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
48
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Middleware
/
SubstituteBindings.php
41
47
Illuminate
\
Routing
\
Middleware
\
SubstituteBindings
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
46
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
45
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
VerifyCsrfToken.php
67
44
Illuminate
\
Foundation
\
Http
\
Middleware
\
VerifyCsrfToken
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
43
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
42
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
Middleware
/
ShareErrorsFromSession.php
49
41
Illuminate
\
View
\
Middleware
\
ShareErrorsFromSession
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
40
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
39
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Middleware
/
StartSession.php
63
38
Illuminate
\
Session
\
Middleware
\
StartSession
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
37
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
36
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Cookie
/
Middleware
/
AddQueuedCookiesToResponse.php
37
35
Illuminate
\
Cookie
\
Middleware
\
AddQueuedCookiesToResponse
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
34
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
33
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Cookie
/
Middleware
/
EncryptCookies.php
59
32
Illuminate
\
Cookie
\
Middleware
\
EncryptCookies
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
31
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
30
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
fanswoo-framework
/
fanswoo-framework
/
app
/
Http
/
Middleware
/
WebPurviewCheck.php
29
29
FF
\
App
\
Http
\
Middleware
\
WebPurviewCheck
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
28
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
27
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
102
26
Illuminate
\
Pipeline
\
Pipeline
then
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
627
25
Illuminate
\
Routing
\
Router
runRouteWithinStack
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
586
24
Illuminate
\
Routing
\
Router
dispatchToRoute
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
564
23
Illuminate
\
Routing
\
Router
dispatch
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
176
22
Illuminate
\
Foundation
\
Http
\
Kernel
Illuminate
\
Foundation
\
Http
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
30
21
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
TransformsRequest.php
30
20
Illuminate
\
Foundation
\
Http
\
Middleware
\
TransformsRequest
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
19
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
18
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
TransformsRequest.php
30
17
Illuminate
\
Foundation
\
Http
\
Middleware
\
TransformsRequest
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
16
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
15
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
ValidatePostSize.php
27
14
Illuminate
\
Foundation
\
Http
\
Middleware
\
ValidatePostSize
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
13
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
12
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
CheckForMaintenanceMode.php
46
11
Illuminate
\
Foundation
\
Http
\
Middleware
\
CheckForMaintenanceMode
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
10
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
9
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Middleware
/
StartSession.php
63
8
Illuminate
\
Session
\
Middleware
\
StartSession
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
7
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
6
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Cookie
/
Middleware
/
EncryptCookies.php
59
5
Illuminate
\
Cookie
\
Middleware
\
EncryptCookies
handle
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
149
4
Illuminate
\
Pipeline
\
Pipeline
Illuminate
\
Pipeline
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
53
3
Illuminate
\
Routing
\
Pipeline
Illuminate
\
Routing
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
102
2
Illuminate
\
Pipeline
\
Pipeline
then
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
151
1
Illuminate
\
Foundation
\
Http
\
Kernel
sendRequestThroughRouter
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
116
0
Illuminate
\
Foundation
\
Http
\
Kernel
handle
/
public
/
index.php
53
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
FileViewFinder.php
    /**
     * Find the given view in the list of paths.
     *
     * @param  string  $name
     * @param  array   $paths
     * @return string
     *
     * @throws \InvalidArgumentException
     */
    protected function findInPaths($name, $paths)
    {
        foreach ((array) $paths as $path) {
            foreach ($this->getPossibleViewFiles($name) as $file) {
                if ($this->files->exists($viewPath = $path.'/'.$file)) {
                    return $viewPath;
                }
            }
        }

        throw new InvalidArgumentException("View [$name] not found.");
    }

    /**
     * Get an array of possible view files.
     *
     * @param  string  $name
     * @return array
     */
    protected function getPossibleViewFiles($name)
    {
        return array_map(function ($extension) use ($name) {
            return str_replace('.', '/', $name).'.'.$extension;
        }, $this->extensions);
    }

    /**
     * Add a location to the finder.
     *
     * @param  string  $location
     * @return void
Arguments
  1. "View [web.pages.page.23] not found."
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
FileViewFinder.php
        }
    }

    /**
     * Get the fully qualified location of the view.
     *
     * @param  string  $name
     * @return string
     */
    public function find($name)
    {
        if (isset($this->views[$name])) {
            return $this->views[$name];
        }

        if ($this->hasHintInformation($name = trim($name))) {
            return $this->views[$name] = $this->findNamespacedView($name);
        }

        return $this->views[$name] = $this->findInPaths($name, $this->paths);
    }

    /**
     * Get the path to a template with a named path.
     *
     * @param  string  $name
     * @return string
     */
    protected function findNamespacedView($name)
    {
        list($namespace, $view) = $this->parseNamespaceSegments($name);

        return $this->findInPaths($view, $this->hints[$namespace]);
    }

    /**
     * Get the segments of a template with a named path.
     *
     * @param  string  $name
     * @return array
Arguments
  1. "web.pages.page.23"
    
  2. array:2 [
      0 => "/home/perobot/www/resources/views"
      1 => "/home/perobot/www/fanswoo-framework/fanswoo-framework/resources/views"
    ]
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
Factory.php
    {
        $data = array_merge($mergeData, $this->parseData($data));

        return tap($this->viewInstance($path, $path, $data), function ($view) {
            $this->callCreator($view);
        });
    }

    /**
     * Get the evaluated view contents for the given view.
     *
     * @param  string  $view
     * @param  array   $data
     * @param  array   $mergeData
     * @return \Illuminate\Contracts\View\View
     */
    public function make($view, $data = [], $mergeData = [])
    {
        $path = $this->finder->find(
            $view = $this->normalizeName($view)
        );

        // Next, we will create the view instance and call the view creator for the view
        // which can set any data, etc. Then we will return the view instance back to
        // the caller for rendering or performing other view manipulations on this.
        $data = array_merge($mergeData, $this->parseData($data));

        return tap($this->viewInstance($view, $path, $data), function ($view) {
            $this->callCreator($view);
        });
    }

    /**
     * Get the first view that actually exists from the given list.
     *
     * @param  array  $views
     * @param  array   $data
     * @param  array   $mergeData
     * @return \Illuminate\Contracts\View\View
     */
Arguments
  1. "web.pages.page.23"
    
/
home
/
perobot
/
www
/
fanswoo-framework
/
fanswoo-framework
/
app
/
Support
/
Helpers
/
Helper.php
        $factory = app(ViewFactory::class);

        if (func_num_args() === 0) {
            return $factory;
        }

        // 這邊處理 i18n 資料夾參數
        // 這邊處理 i18n 資料夾參數
        // 這邊處理 i18n 資料夾參數
        // $view = $i18n . $view;
        // 這邊處理 i18n 資料夾參數
        // 這邊處理 i18n 資料夾參數
        // 這邊處理 i18n 資料夾參數

        if( \View::exists( App::getLocale() . '.' . $view ) )
        {
            $view = App::getLocale() . '.' . $view;
        }

        return $factory->make($view, $data, $mergeData);
    }

}

// 取得 fanswoo-framework path
if (! function_exists('fanswoo_framework_path')) {

    function fanswoo_framework_path()
    {
        $fanswooFrameworkPath = config('app.fanswoo_framework_path');

        if (($_temp = realpath($fanswooFrameworkPath)) !== FALSE)
        {
            $fanswooFrameworkPath = $_temp.'/';
        }
        else
        {
            $fanswooFrameworkPath = rtrim($fanswooFrameworkPath, '/').'/';
        }

Arguments
  1. "web.pages.page.23"
    
  2. array:20 [
      "Request" => []
      "User" => null
      "json" => []
      "global" => array:5 [
        "websiteTitleName" => "沛博科技Perobot"
        "websiteTitleIntroduction" => "服務自動化專家"
        "websiteLogo" => "img/fanswoo-framework/favicon.ico"
        "pageTitleName" => ""
        "applocale" => null
      ]
      "Resources" => Resources {#319}
      "PageSettings" => Collection {#293}
      "pepper_viewcount" => Setting {#307}
      "headBarpageMenu" => Collection {#357}
      "ClassMetas" => ClassMetaCollection {#429}
      "Storys" => Collection {#351}
      "companyAddress" => "11492 台北市內湖區瑞光路586號5樓"
      "companyPhone" => "02-5581-6338"
      "websiteEmail" => "public@perobot.com.tw"
      "facebookLink" => "https://www.facebook.com/Pepper.tw/"
      "PagerField" => PagerField {#603}
      "develophead" => ClassMetaCollection {#622}
      "ShowpieceDevelopClass" => ClassMetaCollection {#649}
      "Classtotal" => 2
      "dealersArr" => array:2 [
        0 => Collection {#345}
        1 => Collection {#676}
      ]
      "Json" => "{"url":"http:\/\/www.perobot.com.tw","pusherAppKey":"","vapidPublicKey":null}"
    ]
    
  3. []
    
/
home
/
perobot
/
www
/
fanswoo-framework
/
fanswoo-framework
/
controllers
/
Web
/
BaseController.php
<?php

namespace FF\Controllers\Web;

use Controllers\Base\ProjectController;

abstract class BaseController extends ProjectController
{

    public function __construct()
    {
        parent::__construct();
        $this->data['Resources']->js('controller', 'controllers/Web/BaseController.js');
    }

    protected function show( $path )
    {        
        return show('web.pages.' . $path, $this->showData() );
    }
}
 
Arguments
  1. "web.pages.page.23"
    
  2. array:20 [
      "Request" => []
      "User" => null
      "json" => []
      "global" => array:5 [
        "websiteTitleName" => "沛博科技Perobot"
        "websiteTitleIntroduction" => "服務自動化專家"
        "websiteLogo" => "img/fanswoo-framework/favicon.ico"
        "pageTitleName" => ""
        "applocale" => null
      ]
      "Resources" => Resources {#319}
      "PageSettings" => Collection {#293}
      "pepper_viewcount" => Setting {#307}
      "headBarpageMenu" => Collection {#357}
      "ClassMetas" => ClassMetaCollection {#429}
      "Storys" => Collection {#351}
      "companyAddress" => "11492 台北市內湖區瑞光路586號5樓"
      "companyPhone" => "02-5581-6338"
      "websiteEmail" => "public@perobot.com.tw"
      "facebookLink" => "https://www.facebook.com/Pepper.tw/"
      "PagerField" => PagerField {#603}
      "develophead" => ClassMetaCollection {#622}
      "ShowpieceDevelopClass" => ClassMetaCollection {#649}
      "Classtotal" => 2
      "dealersArr" => array:2 [
        0 => Collection {#345}
        1 => Collection {#676}
      ]
      "Json" => "{"url":"http:\/\/www.perobot.com.tw","pusherAppKey":"","vapidPublicKey":null}"
    ]
    
/
home
/
perobot
/
www
/
controllers
/
Web
/
PageController.php
        $this->data['dealersArr']=[];
        for($i=0; $i<count($this->data['ShowpieceDevelopClass']) ; $i++){
            $searchName = 'dealers';
            
            $this->data['dealersArr'][$i] = ShowpieceDealer::orm([
                'where' => [
                    'id in' => getClassMetableIds([$this->data['ShowpieceDevelopClass'][$i]->id]),
                ],
                'orderBy' => [
                    'prioritynum' => 'ASC',
                    'id' => 'ASC',
                ],
                'count' => 100
            ]);
            // dd($this->data['dealersArr']);
            

        }

        return $this->show( 'page.' . $page );
    }
}
Arguments
  1. "page.23"
    
/
home
/
perobot
/
www
/
fanswoo-framework
/
fanswoo-framework
/
controllers
/
Base
/
ControllerEncode.php
 
namespace FF\Controllers\Base;
 
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use DB;
 
abstract class ControllerEncode extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
 
    public function __construct()
    {
    }
    
    public function callAction($method, $parameters)
    {
        return call_user_func_array([$this, $method], $parameters);
    }
}
Arguments
  1. "23"
    
/
home
/
perobot
/
www
/
fanswoo-framework
/
fanswoo-framework
/
controllers
/
Base
/
ControllerEncode.php
 
namespace FF\Controllers\Base;
 
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use DB;
 
abstract class ControllerEncode extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
 
    public function __construct()
    {
    }
    
    public function callAction($method, $parameters)
    {
        return call_user_func_array([$this, $method], $parameters);
    }
}
Arguments
  1. array:2 [
      0 => PageController {#243}
      1 => "index"
    ]
    
  2. array:1 [
      "page" => "23"
    ]
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
ControllerDispatcher.php
    {
        $this->container = $container;
    }

    /**
     * Dispatch a request to a given controller and method.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @param  mixed  $controller
     * @param  string  $method
     * @return mixed
     */
    public function dispatch(Route $route, $controller, $method)
    {
        $parameters = $this->resolveClassMethodDependencies(
            $route->parametersWithoutNulls(), $controller, $method
        );

        if (method_exists($controller, 'callAction')) {
            return $controller->callAction($method, $parameters);
        }

        return $controller->{$method}(...array_values($parameters));
    }

    /**
     * Get the middleware for the controller instance.
     *
     * @param  \Illuminate\Routing\Controller  $controller
     * @param  string  $method
     * @return array
     */
    public function getMiddleware($controller, $method)
    {
        if (! method_exists($controller, 'getMiddleware')) {
            return [];
        }

        return collect($controller->getMiddleware())->reject(function ($data) use ($method) {
            return static::methodExcludedByOptions($method, $data['options']);
Arguments
  1. "index"
    
  2. array:1 [
      "page" => "23"
    ]
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
    protected function runCallable()
    {
        $callable = $this->action['uses'];

        return $callable(...array_values($this->resolveMethodDependencies(
            $this->parametersWithoutNulls(), new ReflectionFunction($this->action['uses'])
        )));
    }

    /**
     * Run the route action and return the response.
     *
     * @return mixed
     *
     * @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
     */
    protected function runController()
    {
        return $this->controllerDispatcher()->dispatch(
            $this, $this->getController(), $this->getControllerMethod()
        );
    }

    /**
     * Get the controller instance for the route.
     *
     * @return mixed
     */
    public function getController()
    {
        if (! $this->controller) {
            $class = $this->parseControllerCallback()[0];

            $this->controller = $this->container->make($class);
        }

        return $this->controller;
    }

    /**
Arguments
  1. Route {#159}
    
  2. PageController {#243}
    
  3. "index"
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
     *
     * @throws \UnexpectedValueException
     */
    protected function parseAction($action)
    {
        return RouteAction::parse($this->uri, $action);
    }

    /**
     * Run the route action and return the response.
     *
     * @return mixed
     */
    public function run()
    {
        $this->container = $this->container ?: new Container;

        try {
            if ($this->isControllerAction()) {
                return $this->runController();
            }

            return $this->runCallable();
        } catch (HttpResponseException $e) {
            return $e->getResponse();
        }
    }

    /**
     * Checks whether the route's action is a controller.
     *
     * @return bool
     */
    protected function isControllerAction()
    {
        return is_string($this->action['uses']);
    }

    /**
     * Run the route action and return the response.
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
    /**
     * Run the given route within a Stack "onion" instance.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    protected function runRouteWithinStack(Route $route, Request $request)
    {
        $shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
                                $this->container->make('middleware.disable') === true;

        $middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);

        return (new Pipeline($this->container))
                        ->send($request)
                        ->through($middleware)
                        ->then(function ($request) use ($route) {
                            return $this->prepareResponse(
                                $request, $route->run()
                            );
                        });
    }

    /**
     * Gather the middleware for the given route with resolved class names.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return array
     */
    public function gatherRouteMiddleware(Route $route)
    {
        $middleware = collect($route->gatherMiddleware())->map(function ($name) {
            return (array) MiddlewareNameResolver::resolve($name, $this->middleware, $this->middlewareGroups);
        })->flatten();

        return $this->sortMiddleware($middleware);
    }

    /**
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
use Symfony\Component\Debug\Exception\FatalThrowableError;

/**
 * This extended pipeline catches any exceptions that occur during each slice.
 *
 * The exceptions are converted to HTTP responses for proper middleware handling.
 */
class Pipeline extends BasePipeline
{
    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
    protected function prepareDestination(Closure $destination)
    {
        return function ($passable) use ($destination) {
            try {
                return $destination($passable);
            } catch (Exception $e) {
                return $this->handleException($passable, $e);
            } catch (Throwable $e) {
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
fanswoo-framework
/
fanswoo-framework
/
app
/
Http
/
Middleware
/
Language.php

class Language
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if (Session::has('applocale') AND array_key_exists(Session::get('applocale'), Config::get('app.locales'))) {
            App::setLocale(Session::get('applocale'));
        }
        else { // This is optional as Laravel will automatically set the fallback language if there is none specified
            App::setLocale(Config::get('app.fallback_locale'));
        }
        return $next($request);
    }
}
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#337
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $destination: Closure {#238 …}
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Middleware
/
SubstituteBindings.php
     */
    public function __construct(Registrar $router)
    {
        $this->router = $router;
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $this->router->substituteBindings($route = $request->route());

        $this->router->substituteImplicitBindings($route);

        return $next($request);
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#314
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#337 …}
        $pipe: "FF\App\Http\Middleware\Language"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
VerifyCsrfToken.php
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     *
     * @throws \Illuminate\Session\TokenMismatchException
     */
    public function handle($request, Closure $next)
    {
        if (
            $this->isReading($request) ||
            $this->runningUnitTests() ||
            $this->inExceptArray($request) ||
            $this->tokensMatch($request)
        ) {
            return $this->addCookieToResponse($request, $next($request));
        }

        throw new TokenMismatchException;
    }

    /**
     * Determine if the HTTP request uses a ‘read’ verb.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return bool
     */
    protected function isReading($request)
    {
        return in_array($request->method(), ['HEAD', 'GET', 'OPTIONS']);
    }

    /**
     * Determine if the application is running unit tests.
     *
     * @return bool
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#308
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#314 …}
        $pipe: "Illuminate\Routing\Middleware\SubstituteBindings"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
View
/
Middleware
/
ShareErrorsFromSession.php
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        // If the current session has an "errors" variable bound to it, we will share
        // its value with all view instances so the views can easily access errors
        // without having to bind. An empty bag is set when there aren't errors.
        $this->view->share(
            'errors', $request->session()->get('errors') ?: new ViewErrorBag
        );

        // Putting the errors in the view for every view allows the developer to just
        // assume that some errors are always available, which is convenient since
        // they don't have to continually run checks for the presence of errors.

        return $next($request);
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#311
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#308 …}
        $pipe: "FF\App\Http\Middleware\VerifyCsrfToken"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Middleware
/
StartSession.php
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $this->sessionHandled = true;

        // If a session driver has been configured, we will need to start the session here
        // so that the data is ready for an application. Note that the Laravel sessions
        // do not make use of PHP "native" sessions in any way since they are crappy.
        if ($this->sessionConfigured()) {
            $request->setLaravelSession(
                $session = $this->startSession($request)
            );

            $this->collectGarbage($session);
        }

        $response = $next($request);

        // Again, if the session has been configured we will need to close out the session
        // so that the attributes may be persisted to some storage medium. We will also
        // add the session identifier cookie to the application response headers now.
        if ($this->sessionConfigured()) {
            $this->storeCurrentUrl($request, $session);

            $this->addCookieToResponse($response, $session);
        }

        return $response;
    }

    /**
     * Perform any final actions for the request lifecycle.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Symfony\Component\HttpFoundation\Response  $response
     * @return void
     */
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#312
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#311 …}
        $pipe: "Illuminate\View\Middleware\ShareErrorsFromSession"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Cookie
/
Middleware
/
AddQueuedCookiesToResponse.php
     * Create a new CookieQueue instance.
     *
     * @param  \Illuminate\Contracts\Cookie\QueueingFactory  $cookies
     * @return void
     */
    public function __construct(CookieJar $cookies)
    {
        $this->cookies = $cookies;
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $response = $next($request);

        foreach ($this->cookies->getQueuedCookies() as $cookie) {
            $response->headers->setCookie($cookie);
        }

        return $response;
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#309
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#312 …}
        $pipe: "Illuminate\Session\Middleware\StartSession"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Cookie
/
Middleware
/
EncryptCookies.php
     * Disable encryption for the given cookie name(s).
     *
     * @param  string|array  $cookieName
     * @return void
     */
    public function disableFor($cookieName)
    {
        $this->except = array_merge($this->except, (array) $cookieName);
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        return $this->encrypt($next($this->decrypt($request)));
    }

    /**
     * Decrypt the cookies on the request.
     *
     * @param  \Symfony\Component\HttpFoundation\Request  $request
     * @return \Symfony\Component\HttpFoundation\Request
     */
    protected function decrypt(Request $request)
    {
        foreach ($request->cookies as $key => $c) {
            if ($this->isDisabled($key)) {
                continue;
            }

            try {
                $request->cookies->set($key, $this->decryptCookie($c));
            } catch (DecryptException $e) {
                $request->cookies->set($key, null);
            }
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#284
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#309 …}
        $pipe: "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
fanswoo-framework
/
fanswoo-framework
/
app
/
Http
/
Middleware
/
WebPurviewCheck.php
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @param  string|null  $guard
     * @return mixed
     */
    public function handle($request, Closure $next, $guard = null)
    {

        if(
            in_array( 'web', explode(',', getSetting('SSLTurnPageSetting') ) ) &&
            ! $_SERVER['HTTPS']
        )
        {
            return redirect()->to( 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'] );
        }

        return $next($request);
    }

}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#327
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#235 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#284 …}
        $pipe: "FF\App\Http\Middleware\EncryptCookies"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
    public function via($method)
    {
        $this->method = $method;

        return $this;
    }

    /**
     * Run the pipeline with a final destination callback.
     *
     * @param  \Closure  $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes), $this->carry(), $this->prepareDestination($destination)
        );

        return $pipeline($this->passable);
    }

    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
    protected function prepareDestination(Closure $destination)
    {
        return function ($passable) use ($destination) {
            return $destination($passable);
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
     *
     * @param  \Illuminate\Routing\Route  $route
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    protected function runRouteWithinStack(Route $route, Request $request)
    {
        $shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
                                $this->container->make('middleware.disable') === true;

        $middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);

        return (new Pipeline($this->container))
                        ->send($request)
                        ->through($middleware)
                        ->then(function ($request) use ($route) {
                            return $this->prepareResponse(
                                $request, $route->run()
                            );
                        });
    }

    /**
     * Gather the middleware for the given route with resolved class names.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return array
     */
    public function gatherRouteMiddleware(Route $route)
    {
        $middleware = collect($route->gatherMiddleware())->map(function ($name) {
            return (array) MiddlewareNameResolver::resolve($name, $this->middleware, $this->middlewareGroups);
        })->flatten();

        return $this->sortMiddleware($middleware);
    }

    /**
     * Sort the given middleware by priority.
     *
Arguments
  1. Closure {#238
      class: "Illuminate\Routing\Router"
      this: Router {#26 …}
      parameters: {
        $request: {}
      }
      use: {
        $route: Route {#159 …}
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
    /**
     * Dispatch the request to a route and return the response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    public function dispatchToRoute(Request $request)
    {
        // First we will find a route that matches this request. We will also set the
        // route resolver on the request so middlewares assigned to the route will
        // receive access to this route instance for checking of the parameters.
        $route = $this->findRoute($request);

        $request->setRouteResolver(function () use ($route) {
            return $route;
        });

        $this->events->dispatch(new Events\RouteMatched($route, $request));

        $response = $this->runRouteWithinStack($route, $request);

        return $this->prepareResponse($request, $response);
    }

    /**
     * Find the route matching a given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Routing\Route
     */
    protected function findRoute($request)
    {
        $this->current = $route = $this->routes->match($request);

        $this->container->instance(Route::class, $route);

        return $route;
    }

    /**
Arguments
  1. Route {#159}
    
  2. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return void
     */
    protected function mergeGroupAttributesIntoRoute($route)
    {
        $route->setAction($this->mergeWithLastGroup($route->getAction()));
    }

    /**
     * Dispatch the request to the application.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function dispatch(Request $request)
    {
        $this->currentRequest = $request;

        return $this->dispatchToRoute($request);
    }

    /**
     * Dispatch the request to a route and return the response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    public function dispatchToRoute(Request $request)
    {
        // First we will find a route that matches this request. We will also set the
        // route resolver on the request so middlewares assigned to the route will
        // receive access to this route instance for checking of the parameters.
        $route = $this->findRoute($request);

        $request->setRouteResolver(function () use ($route) {
            return $route;
        });

        $this->events->dispatch(new Events\RouteMatched($route, $request));
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
     * @return void
     */
    public function bootstrap()
    {
        if (! $this->app->hasBeenBootstrapped()) {
            $this->app->bootstrapWith($this->bootstrappers());
        }
    }

    /**
     * Get the route dispatcher callback.
     *
     * @return \Closure
     */
    protected function dispatchToRouter()
    {
        return function ($request) {
            $this->app->instance('request', $request);

            return $this->router->dispatch($request);
        };
    }

    /**
     * Call the terminate method on any terminable middleware.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Http\Response  $response
     * @return void
     */
    public function terminate($request, $response)
    {
        $this->terminateMiddleware($request, $response);

        $this->app->terminate();
    }

    /**
     * Call the terminate method on any terminable middleware.
     *
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
use Symfony\Component\Debug\Exception\FatalThrowableError;

/**
 * This extended pipeline catches any exceptions that occur during each slice.
 *
 * The exceptions are converted to HTTP responses for proper middleware handling.
 */
class Pipeline extends BasePipeline
{
    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
    protected function prepareDestination(Closure $destination)
    {
        return function ($passable) use ($destination) {
            try {
                return $destination($passable);
            } catch (Exception $e) {
                return $this->handleException($passable, $e);
            } catch (Throwable $e) {
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
TransformsRequest.php
     * The additional attributes passed to the middleware.
     *
     * @var array
     */
    protected $attributes = [];

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next, ...$attributes)
    {
        $this->attributes = $attributes;

        $this->clean($request);

        return $next($request);
    }

    /**
     * Clean the request's data.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return void
     */
    protected function clean($request)
    {
        $this->cleanParameterBag($request->query);

        if ($request->isJson()) {
            $this->cleanParameterBag($request->json());
        } else {
            $this->cleanParameterBag($request->request);
        }
    }

    /**
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#122
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#34 …}
      parameters: {
        $passable: {}
      }
      use: {
        $destination: Closure {#23 …}
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
TransformsRequest.php
     * The additional attributes passed to the middleware.
     *
     * @var array
     */
    protected $attributes = [];

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next, ...$attributes)
    {
        $this->attributes = $attributes;

        $this->clean($request);

        return $next($request);
    }

    /**
     * Clean the request's data.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return void
     */
    protected function clean($request)
    {
        $this->cleanParameterBag($request->query);

        if ($request->isJson()) {
            $this->cleanParameterBag($request->json());
        } else {
            $this->cleanParameterBag($request->request);
        }
    }

    /**
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#209
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#34 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#122 …}
        $pipe: "Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
ValidatePostSize.php
class ValidatePostSize
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     *
     * @throws \Illuminate\Http\Exceptions\PostTooLargeException
     */
    public function handle($request, Closure $next)
    {
        $max = $this->getPostMaxSize();

        if ($max > 0 && $request->server('CONTENT_LENGTH') > $max) {
            throw new PostTooLargeException;
        }

        return $next($request);
    }

    /**
     * Determine the server 'post_max_size' as bytes.
     *
     * @return int
     */
    protected function getPostMaxSize()
    {
        if (is_numeric($postMaxSize = ini_get('post_max_size'))) {
            return (int) $postMaxSize;
        }

        $metric = strtoupper(substr($postMaxSize, -1));
        $postMaxSize = (int) $postMaxSize;

        switch ($metric) {
            case 'K':
                return $postMaxSize * 1024;
            case 'M':
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#210
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#34 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#209 …}
        $pipe: "FF\App\Http\Middleware\TrimStrings"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Middleware
/
CheckForMaintenanceMode.php
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     *
     * @throws \Symfony\Component\HttpKernel\Exception\HttpException
     */
    public function handle($request, Closure $next)
    {
        if ($this->app->isDownForMaintenance()) {
            $data = json_decode(file_get_contents($this->app->storagePath().'/framework/down'), true);

            throw new MaintenanceModeException($data['time'], $data['retry'], $data['message']);
        }

        return $next($request);
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#211
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#34 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#210 …}
        $pipe: "Illuminate\Foundation\Http\Middleware\ValidatePostSize"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Session
/
Middleware
/
StartSession.php
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $this->sessionHandled = true;

        // If a session driver has been configured, we will need to start the session here
        // so that the data is ready for an application. Note that the Laravel sessions
        // do not make use of PHP "native" sessions in any way since they are crappy.
        if ($this->sessionConfigured()) {
            $request->setLaravelSession(
                $session = $this->startSession($request)
            );

            $this->collectGarbage($session);
        }

        $response = $next($request);

        // Again, if the session has been configured we will need to close out the session
        // so that the attributes may be persisted to some storage medium. We will also
        // add the session identifier cookie to the application response headers now.
        if ($this->sessionConfigured()) {
            $this->storeCurrentUrl($request, $session);

            $this->addCookieToResponse($response, $session);
        }

        return $response;
    }

    /**
     * Perform any final actions for the request lifecycle.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Symfony\Component\HttpFoundation\Response  $response
     * @return void
     */
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#212
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#34 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#211 …}
        $pipe: "Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Cookie
/
Middleware
/
EncryptCookies.php
     * Disable encryption for the given cookie name(s).
     *
     * @param  string|array  $cookieName
     * @return void
     */
    public function disableFor($cookieName)
    {
        $this->except = array_merge($this->except, (array) $cookieName);
    }

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        return $this->encrypt($next($this->decrypt($request)));
    }

    /**
     * Decrypt the cookies on the request.
     *
     * @param  \Symfony\Component\HttpFoundation\Request  $request
     * @return \Symfony\Component\HttpFoundation\Request
     */
    protected function decrypt(Request $request)
    {
        foreach ($request->cookies as $key => $c) {
            if ($this->isDisabled($key)) {
                continue;
            }

            try {
                $request->cookies->set($key, $this->decryptCookie($c));
            } catch (DecryptException $e) {
                $request->cookies->set($key, null);
            }
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    list($name, $parameters) = $this->parsePipeString($pipe);

                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);

                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }

                return method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
            };
        };
    }

    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        list($name, $parameters) = array_pad(explode(':', $pipe, 2), 2, []);

        if (is_string($parameters)) {
            $parameters = explode(',', $parameters);
        }

        return [$name, $parameters];
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure {#213
      class: "Illuminate\Routing\Pipeline"
      this: Pipeline {#34 …}
      parameters: {
        $passable: {}
      }
      use: {
        $stack: Closure {#212 …}
        $pipe: "Illuminate\Session\Middleware\StartSession"
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();

                    $callable = $slice($stack, $pipe);

                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }

    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Pipeline
/
Pipeline.php
    public function via($method)
    {
        $this->method = $method;

        return $this;
    }

    /**
     * Run the pipeline with a final destination callback.
     *
     * @param  \Closure  $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes), $this->carry(), $this->prepareDestination($destination)
        );

        return $pipeline($this->passable);
    }

    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
    protected function prepareDestination(Closure $destination)
    {
        return function ($passable) use ($destination) {
            return $destination($passable);
        };
    }

    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
    }

    /**
     * Send the given request through the middleware / router.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    protected function sendRequestThroughRouter($request)
    {
        $this->app->instance('request', $request);

        Facade::clearResolvedInstance('request');

        $this->bootstrap();

        return (new Pipeline($this->app))
                    ->send($request)
                    ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
                    ->then($this->dispatchToRouter());
    }

    /**
     * Bootstrap the application for HTTP requests.
     *
     * @return void
     */
    public function bootstrap()
    {
        if (! $this->app->hasBeenBootstrapped()) {
            $this->app->bootstrapWith($this->bootstrappers());
        }
    }

    /**
     * Get the route dispatcher callback.
     *
     * @return \Closure
     */
    protected function dispatchToRouter()
Arguments
  1. Closure {#23
      class: "Illuminate\Foundation\Http\Kernel"
      this: Kernel {#30 …}
      parameters: {
        $request: {}
      }
    }
    
/
home
/
perobot
/
www
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
            $router->middlewareGroup($key, $middleware);
        }

        foreach ($this->routeMiddleware as $key => $middleware) {
            $router->aliasMiddleware($key, $middleware);
        }
    }

    /**
     * Handle an incoming HTTP request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function handle($request)
    {
        try {
            $request->enableHttpMethodParameterOverride();

            $response = $this->sendRequestThroughRouter($request);
        } catch (Exception $e) {
            $this->reportException($e);

            $response = $this->renderException($request, $e);
        } catch (Throwable $e) {
            $this->reportException($e = new FatalThrowableError($e));

            $response = $this->renderException($request, $e);
        }

        $this->app['events']->dispatch(
            new Events\RequestHandled($request, $response)
        );

        return $response;
    }

    /**
     * Send the given request through the middleware / router.
     *
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/
home
/
perobot
/
www
/
public
/
index.php
*/

$app = require_once __DIR__.'/../bootstrap/app.php';

/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/

$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);

$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);

$response->send();

$kernel->terminate($request, $response);
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: []
      #userResolver: Closure {#234
        class: "Illuminate\Auth\AuthServiceProvider"
        this: AuthServiceProvider {#42 …}
        parameters: {
          $guard: {
            default: null
          }
        }
        use: {
          $app: Application {#4 …}
        }
      }
      #routeResolver: Closure {#236
        class: "Illuminate\Routing\Router"
        this: Router {#26 …}
        use: {
          $route: Route {#159 …}
        }
      }
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: null
      #pathInfo: "/page/23"
      #requestUri: "/page/23"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#111}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isClientIpsValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    

Environment & details:

empty
empty
empty
empty
empty
Key Value
REDIRECT_STATUS
"200"
HTTP_ACCEPT
"*/*"
HTTP_USER_AGENT
"claudebot"
HTTP_HOST
"www.perobot.com.tw"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
SERVER_SIGNATURE
"<address>Apache/2.4.18 (Ubuntu) Server at www.perobot.com.tw Port 80</address>\n"
SERVER_SOFTWARE
"Apache/2.4.18 (Ubuntu)"
SERVER_NAME
"www.perobot.com.tw"
SERVER_ADDR
"172.31.31.81"
SERVER_PORT
"80"
REMOTE_ADDR
"107.21.176.63"
DOCUMENT_ROOT
"/home/perobot/www/public/"
REQUEST_SCHEME
"http"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/home/perobot/www/public/"
SERVER_ADMIN
"webmaster@localhost"
SCRIPT_FILENAME
"/home/perobot/www/public/index.php"
REMOTE_PORT
"32836"
REDIRECT_URL
"/page/23"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/page/23"
SCRIPT_NAME
"/index.php"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1711665255.869
REQUEST_TIME
1711665255
APP_ENV
"local"
APP_KEY
"base64:zDgkfVuKbadvWOnQRKAFhJnGoR865cK+iHGbM2J+Bvs="
APP_DEBUG
"true"
APP_LOG_LEVEL
"error"
APP_NAME
"perobot"
APP_URL
"http://perobot.com.tw"
FRAMEWORK_URL
"http://fanswoo.com/api/frameworkKey"
FANSWOO_FRAMEWORK_PATH
"./fanswoo-framework/fanswoo-framework/"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"perobot_official_site"
DB_USERNAME
"perobot"
DB_PASSWORD
"Qaz@1234"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
SESSION_DRIVER
"file"
QUEUE_DRIVER
"database"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
""
MAIL_PORT
""
MAIL_USERNAME
""
MAIL_PASSWORD
""
MAIL_ENCRYPTION
""
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
Key Value
APP_ENV
"local"
APP_KEY
"base64:zDgkfVuKbadvWOnQRKAFhJnGoR865cK+iHGbM2J+Bvs="
APP_DEBUG
"true"
APP_LOG_LEVEL
"error"
APP_NAME
"perobot"
APP_URL
"http://perobot.com.tw"
FRAMEWORK_URL
"http://fanswoo.com/api/frameworkKey"
FANSWOO_FRAMEWORK_PATH
"./fanswoo-framework/fanswoo-framework/"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"perobot_official_site"
DB_USERNAME
"perobot"
DB_PASSWORD
"Qaz@1234"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
SESSION_DRIVER
"file"
QUEUE_DRIVER
"database"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
""
MAIL_PORT
""
MAIL_USERNAME
""
MAIL_PASSWORD
""
MAIL_ENCRYPTION
""
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
0. Whoops\Handler\PrettyPageHandler