think \ exception \ ErrorException
Undefined index: job_title think\exception\ErrorException thrown with message "Undefined index: job_title" Stacktrace: #46 think\exception\ErrorException in /usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php:174 #45 think\initializer\Error:appError in /usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php:174 #44 include in /usr/home/syu6901610001/htdocs/vendor/topthink/think-template/src/template/driver/File.php:59 #43 think\template\driver\File:read in /usr/home/syu6901610001/htdocs/vendor/topthink/think-template/src/Template.php:255 #42 think\Template:fetch in /usr/home/syu6901610001/htdocs/vendor/topthink/think-view/src/Think.php:149 #41 think\view\driver\Think:fetch in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/View.php:90 #40 think\View:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/View.php:126 #39 think\View:getContent in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/View.php:91 #38 think\View:fetch in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Facade.php:96 #37 call_user_func_array in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Facade.php:96 #36 think\Facade:__callStatic in /usr/home/syu6901610001/htdocs/app/seo/controller/Index.php:193 #35 app\seo\controller\Index:pageChild in [internal]:0 #34 ReflectionMethod:invokeArgs in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Container.php:329 #33 think\Container:invokeMethod in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Container.php:362 #32 think\Container:invoke in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/route/dispatch/Callback.php:27 #31 think\route\dispatch\Callback:exec in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/route/Dispatch.php:90 #30 think\route\Dispatch:run in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Route.php:785 #29 think\Route:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:59 #28 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:66 #27 think\Pipeline:then in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Route.php:786 #26 think\Route:dispatch in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php:216 #25 think\Http:dispatchToRoute in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php:206 #24 think\Http:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:59 #23 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/think-multi-app/src/MultiApp.php:71 #22 think\app\MultiApp:think\app\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:59 #21 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:66 #20 think\Pipeline:then in /usr/home/syu6901610001/htdocs/vendor/topthink/think-multi-app/src/MultiApp.php:72 #19 think\app\MultiApp:handle in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #18 call_user_func in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #17 think\Middleware:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:85 #16 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/app/middleware/Resource.php:141 #15 app\middleware\Resource:handle in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #14 call_user_func in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #13 think\Middleware:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:85 #12 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/app/middleware/AllowCross.php:59 #11 app\middleware\AllowCross:handle in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #10 call_user_func in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #9 think\Middleware:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:85 #8 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/think-trace/src/TraceDebug.php:71 #7 think\trace\TraceDebug:handle in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #6 call_user_func in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php:142 #5 think\Middleware:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:85 #4 think\Pipeline:think\{closure} in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php:66 #3 think\Pipeline:then in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php:207 #2 think\Http:runWithRequest in /usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php:170 #1 think\Http:run in /usr/home/syu6901610001/htdocs/public/index.php:56 #0 require_once in /usr/home/syu6901610001/htdocs/index.php:5
Stack frames (47)
46
think\exception\ErrorException
/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php174
45
think\initializer\Error appError
/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php174
44
include
/vendor/topthink/think-template/src/template/driver/File.php59
43
think\template\driver\File read
/vendor/topthink/think-template/src/Template.php255
42
think\Template fetch
/vendor/topthink/think-view/src/Think.php149
凯发·k8(国际)-官方网站
41
think\view\driver\Think fetch
/vendor/topthink/framework/src/think/View.php90
40
think\View think\{closure}
/vendor/topthink/framework/src/think/View.php126
39
think\View getContent
/vendor/topthink/framework/src/think/View.php91
38
think\View fetch
/vendor/topthink/framework/src/think/Facade.php96
凯发·k8(国际)-官方网站
37
call_user_func_array
/vendor/topthink/framework/src/think/Facade.php96
36
think\Facade __callStatic
/app/seo/controller/Index.php193
35
app\seo\controller\Index pageChild
[internal]0
34
ReflectionMethod invokeArgs
/vendor/topthink/framework/src/think/Container.php329
33
think\Container invokeMethod
/vendor/topthink/framework/src/think/Container.php362
32
think\Container invoke
/vendor/topthink/framework/src/think/route/dispatch/Callback.php27
31
think\route\dispatch\Callback exec
/vendor/topthink/framework/src/think/route/Dispatch.php90
30
think\route\Dispatch run
/vendor/topthink/framework/src/think/Route.php785
29
think\Route think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php59
28
think\Pipeline think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php66
27
think\Pipeline then
/vendor/topthink/framework/src/think/Route.php786
26
think\Route dispatch
/vendor/topthink/framework/src/think/Http.php216
25
think\Http dispatchToRoute
/vendor/topthink/framework/src/think/Http.php206
24
think\Http think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php59
23
think\Pipeline think\{closure}
/vendor/topthink/think-multi-app/src/MultiApp.php71
22
think\app\MultiApp think\app\{closure}
/vendor/topthink/framework/src/think/Pipeline.php59
21
think\Pipeline think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php66
20
think\Pipeline then
/vendor/topthink/think-multi-app/src/MultiApp.php72
19
think\app\MultiApp handle
/vendor/topthink/framework/src/think/Middleware.php142
18
call_user_func
/vendor/topthink/framework/src/think/Middleware.php142
17
think\Middleware think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php85
16
think\Pipeline think\{closure}
/app/middleware/Resource.php141
15
app\middleware\Resource handle
/vendor/topthink/framework/src/think/Middleware.php142
14
call_user_func
/vendor/topthink/framework/src/think/Middleware.php142
13
think\Middleware think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php85
12
think\Pipeline think\{closure}
/app/middleware/AllowCross.php59
11
app\middleware\AllowCross handle
/vendor/topthink/framework/src/think/Middleware.php142
10
call_user_func
/vendor/topthink/framework/src/think/Middleware.php142
9
think\Middleware think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php85
8
think\Pipeline think\{closure}
/vendor/topthink/think-trace/src/TraceDebug.php71
7
think\trace\TraceDebug handle
/vendor/topthink/framework/src/think/Middleware.php142
6
call_user_func
/vendor/topthink/framework/src/think/Middleware.php142
5
think\Middleware think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php85
4
think\Pipeline think\{closure}
/vendor/topthink/framework/src/think/Pipeline.php66
3
think\Pipeline then
/vendor/topthink/framework/src/think/Http.php207
2
think\Http runWithRequest
/vendor/topthink/framework/src/think/Http.php170
1
think\Http run
/public/index.php56
0
require_once
/index.php5
/usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php
<main id="recruit-wrapper" class="common-box">
    <div class="container">
        <div class="table-wrapper">
            <table>
                <thead>
                    <tr>
                        <th><?php echo __('Job title'); ?></th>
                        <th><?php echo __('Industry name'); ?></th>
                        <th><?php echo __('Professional name'); ?></th>
                        <th><?php echo __('Job category'); ?></th>
                        <th><?php echo __('Place of work'); ?></th>
                        <th><?php echo __('Number of recruits'); ?></th>
                        <th><?php echo __('Release time'); ?></th>
                    </tr>
                </thead>
                <tbody>
                    <?php if(is_array($list) || $list instanceof \think\Collection || $list instanceof \think\Paginator): $i = 0; $__LIST__ = $list;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$item): $mod = ($i % 2 );++$i;?>
                    <tr>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['job_title']); ?></a>
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['industry_name']); ?></a>                            
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['professional_name']); ?></a>                            
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['job_category']); ?></a>                        
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['place_of_work']); ?></a>                            
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['number_of_recruits']); ?></a>
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo date('Y.m.d', $item['publish_time']); ?></a>
                        </td>
                    </tr>
Arguments
  1. "Undefined index: job_title"
    
/usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php
<main id="recruit-wrapper" class="common-box">
    <div class="container">
        <div class="table-wrapper">
            <table>
                <thead>
                    <tr>
                        <th><?php echo __('Job title'); ?></th>
                        <th><?php echo __('Industry name'); ?></th>
                        <th><?php echo __('Professional name'); ?></th>
                        <th><?php echo __('Job category'); ?></th>
                        <th><?php echo __('Place of work'); ?></th>
                        <th><?php echo __('Number of recruits'); ?></th>
                        <th><?php echo __('Release time'); ?></th>
                    </tr>
                </thead>
                <tbody>
                    <?php if(is_array($list) || $list instanceof \think\Collection || $list instanceof \think\Paginator): $i = 0; $__LIST__ = $list;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$item): $mod = ($i % 2 );++$i;?>
                    <tr>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['job_title']); ?></a>
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['industry_name']); ?></a>                            
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['professional_name']); ?></a>                            
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['job_category']); ?></a>                        
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['place_of_work']); ?></a>                            
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo htmlentities($item['json']['number_of_recruits']); ?></a>
                        </td>
                        <td>
                            <a href="<?php echo htmlentities($item['url']); ?>"><?php echo date('Y.m.d', $item['publish_time']); ?></a>
                        </td>
                    </tr>
Arguments
  1. 8
    
  2. "Undefined index: job_title"
    
  3. "/usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php"
    
  4. 174
    
  5. array:28 [
      "cacheFile" => "/usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php"
      "vars" => array:20 [
        "lang" => "en"
        "home_url" => "/en/index.html"
        "product" => app\seo\model\Category {#81}
        "scheme" => app\seo\model\Category {#84}
        "news" => app\seo\model\Category {#93}
        "about_us" => app\seo\model\Category {#100}
        "header_nav" => array:6 [
          0 => app\seo\model\Category {#106}
          1 => app\seo\model\Category {#116}
          2 => app\seo\model\Category {#117}
          3 => app\seo\model\Category {#121}
          4 => app\seo\model\Category {#126}
          5 => app\seo\model\Category {#129}
        ]
        "lang_url" => "/zh"
        "lang_toggle" => "中文"
        "site" => array:24 [
          "site_name" => "确誉达"
          "seo_title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
          "seo_keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
          "seo_desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
          "site_icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
          "site_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
          "site_copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
          "site_icp" => ""
          "phone" => "18898731410"
          "address" => "Xindongxing Business Center, Liuxian Second Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen"
          "email" => "[email protected]"
          "contact" => "Mr. Duan 13760217058"
          "qrcode" => "/storage/default/20230213/626b5af7cedfea8b3f15e8d948f07acf8fed499d.jpg"
          "site_footer_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
          "wx_qrcode" => "/storage/default/20230216/5e8a0c6b5369bfbbc495cbfa5c61e3d3762d281e.jpg"
          "slide_phone" => "18898731410"
          "name" => "确誉达"
          "logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
          "title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
          "keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
          "desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
          "icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
          "copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
          "icp" => ""
        ]
        "site_us" => app\seo\model\Category {#78}
        "links" => think\model\Collection {#138}
        "page" => 1
        "page_url" => app\seo\server\Seo::pageUrl(string $url, $page) {#71 …2}
        "cat_url" => "cat_47"
        "info_url" => "cat_49"
        "limit" => 8
        "cat" => app\seo\model\Category {#105}
        "info" => app\seo\model\Category {#139}
        "list" => think\paginator\driver\Bootstrap {#155}
      ]
      "lang" => "en"
      "home_url" => "/en/index.html"
      "product" => app\seo\model\Category {#81}
      "scheme" => app\seo\model\Category {#84}
      "news" => app\seo\model\Category {#93}
      "about_us" => app\seo\model\Category {#100}
      "header_nav" => array:6 [
        0 => app\seo\model\Category {#106}
        1 => app\seo\model\Category {#116}
        2 => app\seo\model\Category {#117}
        3 => app\seo\model\Category {#121}
        4 => app\seo\model\Category {#126}
        5 => app\seo\model\Category {#129}
      ]
      "lang_url" => "/zh"
      "lang_toggle" => "中文"
      "site" => array:24 [
        "site_name" => "确誉达"
        "seo_title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "site_icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "site_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "site_copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "site_icp" => ""
        "phone" => "18898731410"
        "address" => "Xindongxing Business Center, Liuxian Second Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen"
        "email" => "[email protected]"
        "contact" => "Mr. Duan 13760217058"
        "qrcode" => "/storage/default/20230213/626b5af7cedfea8b3f15e8d948f07acf8fed499d.jpg"
        "site_footer_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "wx_qrcode" => "/storage/default/20230216/5e8a0c6b5369bfbbc495cbfa5c61e3d3762d281e.jpg"
        "slide_phone" => "18898731410"
        "name" => "确誉达"
        "logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "icp" => ""
      ]
      "site_us" => app\seo\model\Category {#78}
      "links" => think\model\Collection {#138}
      "page" => 1
      "page_url" => app\seo\server\Seo::pageUrl(string $url, $page) {#71 …2}
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
      "limit" => 8
      "cat" => app\seo\model\Category {#105}
      "info" => app\seo\model\Category {#139}
      "list" => think\paginator\driver\Bootstrap {#155}
      "i" => 1
      "__LIST__" => think\paginator\driver\Bootstrap {#155}
      "item" => app\seo\model\Article {#140}
      "key" => 0
      "mod" => 0
      "row" => app\seo\model\Category {#131}
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/think-template/src/template/driver/File.php
    }
 
    /**
     * 读取编译编译
     * @access public
     * @param  string  $cacheFile 缓存的文件名
     * @param  array   $vars 变量数组
     * @return void
     */
    public function read(string $cacheFile, array $vars = []): void
    {
        $this->cacheFile = $cacheFile;
 
        if (!empty($vars) && is_array($vars)) {
            // 模板阵列变量分解成为独立变量
            extract($vars, EXTR_OVERWRITE);
        }
 
        //载入模版缓存文件
        include $this->cacheFile;
    }
 
    /**
     * 检查编译缓存是否有效
     * @access public
     * @param  string  $cacheFile 缓存的文件名
     * @param  int     $cacheTime 缓存时间
     * @return bool
     */
    public function check(string $cacheFile, int $cacheTime): bool
    {
        // 缓存文件不存在, 直接返回false
        if (!file_exists($cacheFile)) {
            return false;
        }
 
        if (0 != $cacheTime && time() > filemtime($cacheFile) + $cacheTime) {
            // 缓存是否在有效期
            return false;
        }
Arguments
  1. "/usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php"
    
/usr/home/syu6901610001/htdocs/vendor/topthink/think-template/src/Template.php
 
        if ($template) {
            $cacheFile = $this->config['cache_path'] . $this->config['cache_prefix'] . md5($this->config['layout_on'] . $this->config['layout_name'] . $template) . '.' . ltrim($this->config['cache_suffix'], '.');
 
            if (!$this->checkCache($cacheFile)) {
                // 缓存无效 重新模板编译
                $content = file_get_contents($template);
                $this->compiler($content, $cacheFile);
            }
 
            // 页面缓存
            ob_start();
            if (PHP_VERSION > 8.0) {
                ob_implicit_flush(false);
            } else {
                ob_implicit_flush(0);
            }
 
            // 读取编译存储
            $this->storage->read($cacheFile, $this->data);
 
            // 获取并清空缓存
            $content = ob_get_clean();
 
            if (!empty($this->config['cache_id']) && $this->config['display_cache'] && $this->cache) {
                // 缓存页面输出
                $this->cache->set($this->config['cache_id'], $content, $this->config['cache_time']);
            }
 
            echo $content;
        }
    }
 
    /**
     * 检查编译缓存是否存在
     * @access public
     * @param  string $cacheId 缓存的id
     * @return boolean
     */
    public function isCache(string $cacheId): bool
Arguments
  1. "/usr/home/syu6901610001/htdocs/runtime/seo/temp/53c282aa728b894af9c9fc657b5c23a4.php"
    
  2. array:20 [
      "lang" => "en"
      "home_url" => "/en/index.html"
      "product" => app\seo\model\Category {#81}
      "scheme" => app\seo\model\Category {#84}
      "news" => app\seo\model\Category {#93}
      "about_us" => app\seo\model\Category {#100}
      "header_nav" => array:6 [
        0 => app\seo\model\Category {#106}
        1 => app\seo\model\Category {#116}
        2 => app\seo\model\Category {#117}
        3 => app\seo\model\Category {#121}
        4 => app\seo\model\Category {#126}
        5 => app\seo\model\Category {#129}
      ]
      "lang_url" => "/zh"
      "lang_toggle" => "中文"
      "site" => array:24 [
        "site_name" => "确誉达"
        "seo_title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "site_icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "site_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "site_copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "site_icp" => ""
        "phone" => "18898731410"
        "address" => "Xindongxing Business Center, Liuxian Second Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen"
        "email" => "[email protected]"
        "contact" => "Mr. Duan 13760217058"
        "qrcode" => "/storage/default/20230213/626b5af7cedfea8b3f15e8d948f07acf8fed499d.jpg"
        "site_footer_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "wx_qrcode" => "/storage/default/20230216/5e8a0c6b5369bfbbc495cbfa5c61e3d3762d281e.jpg"
        "slide_phone" => "18898731410"
        "name" => "确誉达"
        "logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "icp" => ""
      ]
      "site_us" => app\seo\model\Category {#78}
      "links" => think\model\Collection {#138}
      "page" => 1
      "page_url" => app\seo\server\Seo::pageUrl(string $url, $page) {#71 …2}
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
      "limit" => 8
      "cat" => app\seo\model\Category {#105}
      "info" => app\seo\model\Category {#139}
      "list" => think\paginator\driver\Bootstrap {#155}
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/think-view/src/Think.php
            } else {
                $appName = $this->app->http->getName();
                $path    = $this->app->getRootPath() . $view . DIRECTORY_SEPARATOR . ($appName ? $appName . DIRECTORY_SEPARATOR : '');
            }
 
            $this->config['view_path'] = $path;
            $this->template->view_path = $path;
        }
 
        if ('' == pathinfo($template, PATHINFO_EXTENSION)) {
            // 获取模板文件名
            $template = $this->parseTemplate($template);
        }
 
        // 模板不存在 抛出异常
        if (!is_file($template)) {
            throw new TemplateNotFoundException('template not exists:' . $template, $template);
        }
 
        $this->template->fetch($template, $data);
    }
 
    /**
     * 渲染模板内容
     * @access public
     * @param  string $template 模板内容
     * @param  array  $data 模板变量
     * @return void
     */
    public function display(string $template, array $data = []): void
    {
        $this->template->display($template, $data);
    }
 
    /**
     * 自动定位模板文件
     * @access private
     * @param  string $template 模板文件规则
     * @return string
     */
Arguments
  1. "/usr/home/syu6901610001/htdocs/view/seo/recruit.html"
    
  2. array:20 [
      "lang" => "en"
      "home_url" => "/en/index.html"
      "product" => app\seo\model\Category {#81}
      "scheme" => app\seo\model\Category {#84}
      "news" => app\seo\model\Category {#93}
      "about_us" => app\seo\model\Category {#100}
      "header_nav" => array:6 [
        0 => app\seo\model\Category {#106}
        1 => app\seo\model\Category {#116}
        2 => app\seo\model\Category {#117}
        3 => app\seo\model\Category {#121}
        4 => app\seo\model\Category {#126}
        5 => app\seo\model\Category {#129}
      ]
      "lang_url" => "/zh"
      "lang_toggle" => "中文"
      "site" => array:24 [
        "site_name" => "确誉达"
        "seo_title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "site_icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "site_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "site_copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "site_icp" => ""
        "phone" => "18898731410"
        "address" => "Xindongxing Business Center, Liuxian Second Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen"
        "email" => "[email protected]"
        "contact" => "Mr. Duan 13760217058"
        "qrcode" => "/storage/default/20230213/626b5af7cedfea8b3f15e8d948f07acf8fed499d.jpg"
        "site_footer_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "wx_qrcode" => "/storage/default/20230216/5e8a0c6b5369bfbbc495cbfa5c61e3d3762d281e.jpg"
        "slide_phone" => "18898731410"
        "name" => "确誉达"
        "logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "icp" => ""
      ]
      "site_us" => app\seo\model\Category {#78}
      "links" => think\model\Collection {#138}
      "page" => 1
      "page_url" => app\seo\server\Seo::pageUrl(string $url, $page) {#71 …2}
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
      "limit" => 8
      "cat" => app\seo\model\Category {#105}
      "info" => app\seo\model\Category {#139}
      "list" => think\paginator\driver\Bootstrap {#155}
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/View.php
     * @return $this
     */
    public function filter(callable $filter = null)
    {
        $this->filter = $filter;
        return $this;
    }
 
    /**
     * 解析和获取模板内容 用于输出
     * @access public
     * @param string $template 模板文件名或者内容
     * @param array  $vars     模板变量
     * @return string
     * @throws \Exception
     */
    public function fetch(string $template = '', array $vars = []): string
    {
        return $this->getContent(function () use ($vars, $template) {
            $this->engine()->fetch($template, array_merge($this->data, $vars));
        });
    }
 
    /**
     * 渲染内容输出
     * @access public
     * @param string $content 内容
     * @param array  $vars    模板变量
     * @return string
     */
    public function display(string $content, array $vars = []): string
    {
        return $this->getContent(function () use ($vars, $content) {
            $this->engine()->display($content, array_merge($this->data, $vars));
        });
    }
 
    /**
     * 获取模板引擎渲染内容
     * @param $callback
Arguments
  1. "/usr/home/syu6901610001/htdocs/view/seo/recruit.html"
    
  2. array:20 [
      "lang" => "en"
      "home_url" => "/en/index.html"
      "product" => app\seo\model\Category {#81}
      "scheme" => app\seo\model\Category {#84}
      "news" => app\seo\model\Category {#93}
      "about_us" => app\seo\model\Category {#100}
      "header_nav" => array:6 [
        0 => app\seo\model\Category {#106}
        1 => app\seo\model\Category {#116}
        2 => app\seo\model\Category {#117}
        3 => app\seo\model\Category {#121}
        4 => app\seo\model\Category {#126}
        5 => app\seo\model\Category {#129}
      ]
      "lang_url" => "/zh"
      "lang_toggle" => "中文"
      "site" => array:24 [
        "site_name" => "确誉达"
        "seo_title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "seo_desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "site_icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "site_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "site_copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "site_icp" => ""
        "phone" => "18898731410"
        "address" => "Xindongxing Business Center, Liuxian Second Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen"
        "email" => "[email protected]"
        "contact" => "Mr. Duan 13760217058"
        "qrcode" => "/storage/default/20230213/626b5af7cedfea8b3f15e8d948f07acf8fed499d.jpg"
        "site_footer_logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "wx_qrcode" => "/storage/default/20230216/5e8a0c6b5369bfbbc495cbfa5c61e3d3762d281e.jpg"
        "slide_phone" => "18898731410"
        "name" => "确誉达"
        "logo" => "/storage/default/20230213/981d303b8efe5bf907ecc9fca0a64ea49bef7e6e.png"
        "title" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "keyword" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "desc" => "Shenzhen Queyuda Electronic Technology Co., Ltd. focuses on RF solutions and smart end devices. It covers GNSS high-accuracy navigation and positioning solution module such as GPS and Beidou, high-accuracy inertial navigation module, NFC near-field identification communication module, RF ID far-field communication module, human, machine and pet positioning intelligent terminal, 2G, 3G, 4G signal enhancement amplification repeater s, etc."
        "icon" => "/storage/default/20230213/b02de1c4be59be3eeb1b4170c1e3027110043d5c.png"
        "copyright" => "Shenzhen Queyuda Electronic Technology Co., Ltd."
        "icp" => ""
      ]
      "site_us" => app\seo\model\Category {#78}
      "links" => think\model\Collection {#138}
      "page" => 1
      "page_url" => app\seo\server\Seo::pageUrl(string $url, $page) {#71 …2}
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
      "limit" => 8
      "cat" => app\seo\model\Category {#105}
      "info" => app\seo\model\Category {#139}
      "list" => think\paginator\driver\Bootstrap {#155}
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/View.php
 
    /**
     * 获取模板引擎渲染内容
     * @param $callback
     * @return string
     * @throws \Exception
     */
    protected function getContent($callback): string
    {
        // 页面缓存
        ob_start();
        if (PHP_VERSION > 8.0) {
            ob_implicit_flush(false);
        } else {
            ob_implicit_flush(0);
        }
 
        // 渲染输出
        try {
            $callback();
        } catch (\Exception $e) {
            ob_end_clean();
            throw $e;
        }
 
        // 获取并清空缓存
        $content = ob_get_clean();
 
        if ($this->filter) {
            $content = call_user_func_array($this->filter, [$content]);
        }
 
        return $content;
    }
 
    /**
     * 模板变量赋值
     * @access public
     * @param string $name  变量名
     * @param mixed  $value 变量值
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/View.php
     */
    public function filter(callable $filter = null)
    {
        $this->filter = $filter;
        return $this;
    }
 
    /**
     * 解析和获取模板内容 用于输出
     * @access public
     * @param string $template 模板文件名或者内容
     * @param array  $vars     模板变量
     * @return string
     * @throws \Exception
     */
    public function fetch(string $template = '', array $vars = []): string
    {
        return $this->getContent(function () use ($vars, $template) {
            $this->engine()->fetch($template, array_merge($this->data, $vars));
        });
    }
 
    /**
     * 渲染内容输出
     * @access public
     * @param string $content 内容
     * @param array  $vars    模板变量
     * @return string
     */
    public function display(string $content, array $vars = []): string
    {
        return $this->getContent(function () use ($vars, $content) {
            $this->engine()->display($content, array_merge($this->data, $vars));
        });
    }
 
    /**
     * 获取模板引擎渲染内容
     * @param $callback
     * @return string
Arguments
  1. Closure() {#144 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Facade.php
     */
    public static function make(string $class, $args = [], $newInstance = false)
    {
        if (__CLASS__ != static::class) {
            return self::__callStatic('make', func_get_args());
        }
 
        if (true === $args) {
            // 总是创建新的实例化对象
            $newInstance = true;
            $args        = [];
        }
 
        return self::createFacade($class, $args, $newInstance);
    }
 
    // 调用实际类的方法
    public static function __callStatic($method, $params)
    {
        return call_user_func_array([static::createFacade(), $method], $params);
    }
}
 
Arguments
  1. "recruit"
    
  2. array:6 [
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
      "limit" => 8
      "cat" => app\seo\model\Category {#105}
      "info" => app\seo\model\Category {#139}
      "list" => think\paginator\driver\Bootstrap {#155}
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Facade.php
     */
    public static function make(string $class, $args = [], $newInstance = false)
    {
        if (__CLASS__ != static::class) {
            return self::__callStatic('make', func_get_args());
        }
 
        if (true === $args) {
            // 总是创建新的实例化对象
            $newInstance = true;
            $args        = [];
        }
 
        return self::createFacade($class, $args, $newInstance);
    }
 
    // 调用实际类的方法
    public static function __callStatic($method, $params)
    {
        return call_user_func_array([static::createFacade(), $method], $params);
    }
}
 
Arguments
  1. array:2 [
      0 => think\View {#75}
      1 => "fetch"
    ]
    
  2. array:2 [
      0 => "recruit"
      1 => array:6 [
        "cat_url" => "cat_47"
        "info_url" => "cat_49"
        "limit" => 8
        "cat" => app\seo\model\Category {#105}
        "info" => app\seo\model\Category {#139}
        "list" => think\paginator\driver\Bootstrap {#155}
      ]
    ]
    
/usr/home/syu6901610001/htdocs/app/seo/controller/Index.php
            $latest = Seo::latestArticle(['cat_id' => $info->id], ['limit' => 3, 'field' => ['publish_time']]);
            $where = [
                ['id', 'NOT IN',  implode(',', array_column($latest->toArray(), 'id'))],
                ['cat_id', '=', $info->id]
            ];
            $list = Seo::articleList($where, ['limit' => $limit]);
        }
        if ($info->group == 'aboutUs') {
            $env_id = $this->lang == 'zh' ? 50 : 51;
            $honor_id = $this->lang == 'zh' ? 16 : 37;
            $info_about_id = $this->lang == 'zh' ? 65 : 66;
            // 公司环境
            $info_env = Seo::page(['id' => $env_id], ['article' => true]);
            // 公司荣誉
            $info_honor = Seo::page(['id' => $honor_id], ['article' => true]);
 
            $info_about = Seo::page(['id' => $info_about_id]);
        }
       
        return View::fetch($info->template, get_defined_vars());
    }
 
    #[Route(':info_url/content/:article_url')]
    public function article($info_url, $article_url)
    {
        $info = Seo::page($info_url);
        if ($info->pid != 0) {
            $cat_url = Seo::getUrlById($info->pid);
            $cat = Seo::page($cat_url, ['child' => true]);
        } else {
            $cat = $info;
        }
        if ($info->group == 'scheme') {
            $article = Seo::category($article_url);
            $relevant = Seo::articleList(['group' => 'product'], ['limit' => 3]);
        } else {
            $article = Seo::article($article_url, ['relevant' => [
                'limit' => 3
            ]]);
        }
Arguments
  1. "fetch"
    
  2. array:2 [
      0 => "recruit"
      1 => array:6 [
        "cat_url" => "cat_47"
        "info_url" => "cat_49"
        "limit" => 8
        "cat" => app\seo\model\Category {#105}
        "info" => app\seo\model\Category {#139}
        "list" => think\paginator\driver\Bootstrap {#155}
      ]
    ]
    
[internal]
Arguments
  1. "cat_47"
    
  2. "cat_49"
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Container.php
            $class = is_object($class) ? $class : $this->invokeClass($class);
        } else {
            // 静态方法
            [$class, $method] = explode('::', $method);
        }
 
        try {
            $reflect = new ReflectionMethod($class, $method);
        } catch (ReflectionException $e) {
            $class = is_object($class) ? get_class($class) : $class;
            throw new FuncNotFoundException('method not exists: ' . $class . '::' . $method . '()', "{$class}::{$method}", $e);
        }
 
        $args = $this->bindParams($reflect, $vars);
 
        if ($accessible) {
            $reflect->setAccessible($accessible);
        }
 
        return $reflect->invokeArgs(is_object($class) ? $class : null, $args);
    }
 
    /**
     * 调用反射执行类的方法 支持参数绑定
     * @access public
     * @param object $instance 对象实例
     * @param mixed  $reflect  反射类
     * @param array  $vars     参数
     * @return mixed
     */
    public function invokeReflectMethod($instance, $reflect, array $vars = [])
    {
        $args = $this->bindParams($reflect, $vars);
 
        return $reflect->invokeArgs($instance, $args);
    }
 
    /**
     * 调用反射执行callable 支持参数绑定
     * @access public
Arguments
  1. app\seo\controller\Index {#74}
    
  2. array:2 [
      0 => "cat_47"
      1 => "cat_49"
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Container.php
 
        return $reflect->invokeArgs($instance, $args);
    }
 
    /**
     * 调用反射执行callable 支持参数绑定
     * @access public
     * @param mixed $callable
     * @param array $vars       参数
     * @param bool  $accessible 设置是否可访问
     * @return mixed
     */
    public function invoke($callable, array $vars = [], bool $accessible = false)
    {
        if ($callable instanceof Closure) {
            return $this->invokeFunction($callable, $vars);
        } elseif (is_string($callable) && false === strpos($callable, '::')) {
            return $this->invokeFunction($callable, $vars);
        } else {
            return $this->invokeMethod($callable, $vars, $accessible);
        }
    }
 
    /**
     * 调用反射执行类的实例化 支持依赖注入
     * @access public
     * @param string $class 类名
     * @param array  $vars  参数
     * @return mixed
     */
    public function invokeClass(string $class, array $vars = [])
    {
        try {
            $reflect = new ReflectionClass($class);
        } catch (ReflectionException $e) {
            throw new ClassNotFoundException('class not exists: ' . $class, $class, $e);
        }
 
        if ($reflect->hasMethod('__make')) {
            $method = $reflect->getMethod('__make');
Arguments
  1. "pageChild"
    
  2. array:3 [
      "lang" => "en"
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
    ]
    
  3. false
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/route/dispatch/Callback.php
// +----------------------------------------------------------------------
// | Author: liu21st <[email protected]>
// +----------------------------------------------------------------------
declare (strict_types = 1);
 
namespace think\route\dispatch;
 
use think\route\Dispatch;
 
/**
 * Callback Dispatcher
 */
class Callback extends Dispatch
{
    public function exec()
    {
        // 执行回调方法
        $vars = array_merge($this->request->param(), $this->param);
 
        return $this->app->invoke($this->dispatch, $vars);
    }
 
}
 
Arguments
  1. array:2 [
      0 => "app\seo\controller\Index"
      1 => "pageChild"
    ]
    
  2. array:3 [
      "lang" => "en"
      "cat_url" => "cat_47"
      "info_url" => "cat_49"
    ]
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/route/Dispatch.php
    }
 
    /**
     * 执行路由调度
     * @access public
     * @return mixed
     */
    public function run(): Response
    {
        if ($this->rule instanceof RuleItem && $this->request->method() == 'OPTIONS' && $this->rule->isAutoOptions()) {
            $rules = $this->rule->getRouter()->getRule($this->rule->getRule());
            $allow = [];
            foreach ($rules as $item) {
                $allow[] = strtoupper($item->getMethod());
            }
 
            return Response::create('', 'html', 204)->header(['Allow' => implode(', ', $allow)]);
        }
 
        $data = $this->exec();
        return $this->autoResponse($data);
    }
 
    protected function autoResponse($data): Response
    {
        if ($data instanceof Response) {
            $response = $data;
        } elseif ($data instanceof ResponseInterface) {
            $response = Response::create((string) $data->getBody(), 'html', $data->getStatusCode());
 
            foreach ($data->getHeaders() as $header => $values) {
                $response->header([$header => implode(", ", $values)]);
            }
        } elseif (!is_null($data)) {
            // 默认自动识别响应输出类型
            $type     = $this->request->isJson() ? 'json' : 'html';
            $response = Response::create($data, $type);
        } else {
            $data = ob_get_clean();
 
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Route.php
    {
        $this->request = $request;
        $this->host    = $this->request->host(true);
 
        if ($withRoute) {
            //加载路由
            if ($withRoute instanceof Closure) {
                $withRoute();
            }
            $dispatch = $this->check();
        } else {
            $dispatch = $this->url($this->path());
        }
 
        $dispatch->init($this->app);
 
        return $this->app->middleware->pipeline('route')
            ->send($request)
            ->then(function () use ($dispatch) {
                return $dispatch->run();
            });
    }
 
    /**
     * 检测URL路由
     * @access public
     * @return Dispatch|false
     * @throws RouteNotFoundException
     */
    public function check()
    {
        // 自动检测域名路由
        $url = str_replace($this->config['pathinfo_depr'], '|', $this->path());
 
        $completeMatch = $this->config['route_complete_match'];
 
        $result = $this->checkDomain()->check($this->request, $url, $completeMatch);
 
        if (false === $result && !empty($this->cross)) {
            // 检测跨域路由
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
     */
    public function through($pipes)
    {
        $this->pipes = is_array($pipes) ? $pipes : func_get_args();
        return $this;
    }
 
    /**
     * 执行
     * @param Closure $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            function ($passable) use ($destination) {
                try {
                    return $destination($passable);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            }
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
    /**
     * 执行
     * @param Closure $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            function ($passable) use ($destination) {
                try {
                    return $destination($passable);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            }
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Route.php
        $this->request = $request;
        $this->host    = $this->request->host(true);
 
        if ($withRoute) {
            //加载路由
            if ($withRoute instanceof Closure) {
                $withRoute();
            }
            $dispatch = $this->check();
        } else {
            $dispatch = $this->url($this->path());
        }
 
        $dispatch->init($this->app);
 
        return $this->app->middleware->pipeline('route')
            ->send($request)
            ->then(function () use ($dispatch) {
                return $dispatch->run();
            });
    }
 
    /**
     * 检测URL路由
     * @access public
     * @return Dispatch|false
     * @throws RouteNotFoundException
     */
    public function check()
    {
        // 自动检测域名路由
        $url = str_replace($this->config['pathinfo_depr'], '|', $this->path());
 
        $completeMatch = $this->config['route_complete_match'];
 
        $result = $this->checkDomain()->check($this->request, $url, $completeMatch);
 
        if (false === $result && !empty($this->cross)) {
            // 检测跨域路由
            $result = $this->cross->check($this->request, $url, $completeMatch);
Arguments
  1. Closure() {#68 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php
        // 加载全局中间件
        $this->loadMiddleware();
 
        // 监听HttpRun
        $this->app->event->trigger(HttpRun::class);
 
        return $this->app->middleware->pipeline()
            ->send($request)
            ->then(function ($request) {
                return $this->dispatchToRoute($request);
            });
    }
 
    protected function dispatchToRoute($request)
    {
        $withRoute = $this->app->config->get('app.with_route', true) ? function () {
            $this->loadRoutes();
        } : null;
 
        return $this->app->route->dispatch($request, $withRoute);
    }
 
    /**
     * 加载全局中间件
     */
    protected function loadMiddleware(): void
    {
        if (is_file($this->app->getBasePath() . 'middleware.php')) {
            $this->app->middleware->import(include $this->app->getBasePath() . 'middleware.php');
        }
    }
 
    /**
     * 加载路由
     * @access protected
     * @return void
     */
    protected function loadRoutes(): void
    {
        // 加载路由定义
Arguments
  1. app\Request {#45}
    
  2. Closure() {#60 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php
        }
    }
 
    /**
     * 执行应用程序
     * @param Request $request
     * @return mixed
     */
    protected function runWithRequest(Request $request)
    {
        // 加载全局中间件
        $this->loadMiddleware();
 
        // 监听HttpRun
        $this->app->event->trigger(HttpRun::class);
 
        return $this->app->middleware->pipeline()
            ->send($request)
            ->then(function ($request) {
                return $this->dispatchToRoute($request);
            });
    }
 
    protected function dispatchToRoute($request)
    {
        $withRoute = $this->app->config->get('app.with_route', true) ? function () {
            $this->loadRoutes();
        } : null;
 
        return $this->app->route->dispatch($request, $withRoute);
    }
 
    /**
     * 加载全局中间件
     */
    protected function loadMiddleware(): void
    {
        if (is_file($this->app->getBasePath() . 'middleware.php')) {
            $this->app->middleware->import(include $this->app->getBasePath() . 'middleware.php');
        }
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
     */
    public function through($pipes)
    {
        $this->pipes = is_array($pipes) ? $pipes : func_get_args();
        return $this;
    }
 
    /**
     * 执行
     * @param Closure $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            function ($passable) use ($destination) {
                try {
                    return $destination($passable);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            }
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/think-multi-app/src/MultiApp.php
        $this->path = $this->app->http->getPath();
    }
 
    /**
     * 多应用解析
     * @access public
     * @param Request $request
     * @param Closure $next
     * @return Response
     */
    public function handle($request, Closure $next)
    {
        if (!$this->parseMultiApp()) {
            return $next($request);
        }
 
        return $this->app->middleware->pipeline('app')
            ->send($request)
            ->then(function ($request) use ($next) {
                return $next($request);
            });
    }
 
    /**
     * 获取路由目录
     * @access protected
     * @return string
     */
    protected function getRoutePath(): string
    {
        return $this->app->getAppPath() . 'route' . DIRECTORY_SEPARATOR;
    }
 
    /**
     * 解析多应用
     * @return bool
     */
    protected function parseMultiApp(): bool
    {
        $scriptName = $this->getScriptName();
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
     */
    public function through($pipes)
    {
        $this->pipes = is_array($pipes) ? $pipes : func_get_args();
        return $this;
    }
 
    /**
     * 执行
     * @param Closure $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            function ($passable) use ($destination) {
                try {
                    return $destination($passable);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            }
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
    /**
     * 执行
     * @param Closure $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            function ($passable) use ($destination) {
                try {
                    return $destination($passable);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            }
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/think-multi-app/src/MultiApp.php
    }
 
    /**
     * 多应用解析
     * @access public
     * @param Request $request
     * @param Closure $next
     * @return Response
     */
    public function handle($request, Closure $next)
    {
        if (!$this->parseMultiApp()) {
            return $next($request);
        }
 
        return $this->app->middleware->pipeline('app')
            ->send($request)
            ->then(function ($request) use ($next) {
                return $next($request);
            });
    }
 
    /**
     * 获取路由目录
     * @access protected
     * @return string
     */
    protected function getRoutePath(): string
    {
        return $this->app->getAppPath() . 'route' . DIRECTORY_SEPARATOR;
    }
 
    /**
     * 解析多应用
     * @return bool
     */
    protected function parseMultiApp(): bool
    {
        $scriptName = $this->getScriptName();
        $defaultApp = $this->app->config->get('app.default_app') ?: 'index';
Arguments
  1. Closure($request) {#67 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#55 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. array:2 [
      0 => think\app\MultiApp {#66}
      1 => "handle"
    ]
    
  2. app\Request {#45}
    
  3. Closure($passable) {#55 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            };
        };
    }
 
    /**
     * 异常处理
     * @param $passable
     * @param $e
     * @return mixed
     */
    protected function handleException($passable, Throwable $e)
    {
        if ($this->exceptionHandler) {
            return call_user_func($this->exceptionHandler, $passable, $e);
        }
        throw $e;
    }
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#55 …4}
    
/usr/home/syu6901610001/htdocs/app/middleware/Resource.php
 
    /**
     * 处理请求
     * 
     * @param \think\Request $request
     * @param \Closure $next
     * @return \think\Response 
     */
    public function handle(Request $request, \Closure $next): Response
    { 
        Log::close(); // 关闭日志记录
        if ($request->method() === 'OPTIONS') {
            $this->preflight();
        }
 
        if ($request->method() === 'GET' && empty($request->header('batoken'))) {
            $this->assets($request);
        }
 
        return $next($request);
    }
}
 
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#56 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. array:2 [
      0 => app\middleware\Resource {#62}
      1 => "handle"
    ]
    
  2. app\Request {#45}
    
  3. Closure($passable) {#56 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            };
        };
    }
 
    /**
     * 异常处理
     * @param $passable
     * @param $e
     * @return mixed
     */
    protected function handleException($passable, Throwable $e)
    {
        if ($this->exceptionHandler) {
            return call_user_func($this->exceptionHandler, $passable, $e);
        }
        throw $e;
    }
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#56 …4}
    
/usr/home/syu6901610001/htdocs/app/middleware/AllowCross.php
     */
    public function handle(Request $request, Closure $next, ?array $header = []): Response
    {
        $header = !empty($header) ? array_merge($this->header, $header) : $this->header;
 
        
        $origin = $request->header('origin');
        if ($origin) {
            $info = parse_url($origin);
 
            // 获取跨域配置
            $corsDomain   = explode(',', Config::get('buildadmin.cors_request_domain'));
            $corsDomain[] = $request->host(true);
 
            if (in_array("*", $corsDomain) || in_array($origin, $corsDomain) || (isset($info['host']) && in_array($info['host'], $corsDomain))) {
                header("Access-Control-Allow-Origin: " . $origin);
            }
        }
 
        return $next($request)->header($header);
    }
}
 
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#57 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. array:2 [
      0 => app\middleware\AllowCross {#52}
      1 => "handle"
    ]
    
  2. app\Request {#45}
    
  3. Closure($passable) {#57 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            };
        };
    }
 
    /**
     * 异常处理
     * @param $passable
     * @param $e
     * @return mixed
     */
    protected function handleException($passable, Throwable $e)
    {
        if ($this->exceptionHandler) {
            return call_user_func($this->exceptionHandler, $passable, $e);
        }
        throw $e;
    }
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#57 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/think-trace/src/TraceDebug.php
     * @access public
     * @param Request $request
     * @param Closure $next
     * @return void
     */
    public function handle($request, Closure $next)
    {
        $debug = $this->app->isDebug();
 
        // 注册日志监听
        if ($debug) {
            $this->log = [];
            $this->app->event->listen(LogWrite::class, function ($event) {
                if (empty($this->config['channel']) || $this->config['channel'] == $event->channel) {
                    $this->log = array_merge_recursive($this->log, $event->log);
                }
            });
        }
 
        $response = $next($request);
 
        // Trace调试注入
        if ($debug) {
            $data = $response->getContent();
            $this->traceDebug($response, $data);
            $response->content($data);
        }
 
        return $response;
    }
 
    public function traceDebug(Response $response, &$content)
    {
        $config = $this->config;
        $type   = $config['type'] ?? 'Html';
 
        unset($config['type']);
 
        $trace = App::factory($type, '\\think\\trace\\', $config);
 
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#58 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Middleware.php
    {
        return $this->queue[$type] ?? [];
    }
 
    /**
     * 调度管道
     * @access public
     * @param string $type 中间件类型
     * @return Pipeline
     */
    public function pipeline(string $type = 'global')
    {
        return (new Pipeline())
            ->through(array_map(function ($middleware) {
                return function ($request, $next) use ($middleware) {
                    [$call, $params] = $middleware;
                    if (is_array($call) && is_string($call[0])) {
                        $call = [$this->app->make($call[0]), $call[1]];
                    }
                    $response = call_user_func($call, $request, $next, ...$params);
 
                    if (!$response instanceof Response) {
                        throw new LogicException('The middleware must return Response instance');
                    }
                    return $response;
                };
            }, $this->sortMiddleware($this->queue[$type] ?? [])))
            ->whenException([$this, 'handleException']);
    }
 
    /**
     * 结束调度
     * @param Response $response
     */
    public function end(Response $response)
    {
        foreach ($this->queue as $queue) {
            foreach ($queue as $middleware) {
                [$call] = $middleware;
                if (is_array($call) && is_string($call[0])) {
Arguments
  1. array:2 [
      0 => think\trace\TraceDebug {#64}
      1 => "handle"
    ]
    
  2. app\Request {#45}
    
  3. Closure($passable) {#58 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            };
        };
    }
 
    /**
     * 异常处理
     * @param $passable
     * @param $e
     * @return mixed
     */
    protected function handleException($passable, Throwable $e)
    {
        if ($this->exceptionHandler) {
            return call_user_func($this->exceptionHandler, $passable, $e);
        }
        throw $e;
    }
Arguments
  1. app\Request {#45}
    
  2. Closure($passable) {#58 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Pipeline.php
    /**
     * 执行
     * @param Closure $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes),
            $this->carry(),
            function ($passable) use ($destination) {
                try {
                    return $destination($passable);
                } catch (Throwable | Exception $e) {
                    return $this->handleException($passable, $e);
                }
            }
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * 设置异常处理器
     * @param callable $handler
     * @return $this
     */
    public function whenException($handler)
    {
        $this->exceptionHandler = $handler;
        return $this;
    }
 
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    return $pipe($passable, $stack);
                } catch (Throwable | Exception $e) {
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php
    }
 
    /**
     * 执行应用程序
     * @param Request $request
     * @return mixed
     */
    protected function runWithRequest(Request $request)
    {
        // 加载全局中间件
        $this->loadMiddleware();
 
        // 监听HttpRun
        $this->app->event->trigger(HttpRun::class);
 
        return $this->app->middleware->pipeline()
            ->send($request)
            ->then(function ($request) {
                return $this->dispatchToRoute($request);
            });
    }
 
    protected function dispatchToRoute($request)
    {
        $withRoute = $this->app->config->get('app.with_route', true) ? function () {
            $this->loadRoutes();
        } : null;
 
        return $this->app->route->dispatch($request, $withRoute);
    }
 
    /**
     * 加载全局中间件
     */
    protected function loadMiddleware(): void
    {
        if (is_file($this->app->getBasePath() . 'middleware.php')) {
            $this->app->middleware->import(include $this->app->getBasePath() . 'middleware.php');
        }
    }
Arguments
  1. Closure($request) {#21 …4}
    
/usr/home/syu6901610001/htdocs/vendor/topthink/framework/src/think/Http.php
        return $this->isBind;
    }
 
    /**
     * 执行应用程序
     * @access public
     * @param Request|null $request
     * @return Response
     */
    public function run(Request $request = null): Response
    {
        //初始化
        $this->initialize();
 
        //自动创建request对象
        $request = $request ?? $this->app->make('request', [], true);
        $this->app->instance('request', $request);
 
        try {
            $response = $this->runWithRequest($request);
        } catch (Throwable $e) {
            $this->reportException($e);
 
            $response = $this->renderException($request, $e);
        }
 
        return $response;
    }
 
    /**
     * 初始化
     */
    protected function initialize()
    {
        if (!$this->app->initialized()) {
            $this->app->initialize();
        }
    }
 
    /**
Arguments
  1. app\Request {#45}
    
/usr/home/syu6901610001/htdocs/public/index.php
//     }
//     // 安装检测-e
 
//     /*
//      * 检测是否已编译前端-s
//      * 如果存在 index.html 则访问 index.html
//      */
//     if (is_file($rootPath . 'index.html')) {
//         header("location:" . DIRECTORY_SEPARATOR . 'index.html');
//         exit();
//     }
//     // 检测是否已编译前端-e
// }
 
require __DIR__ . '/../vendor/autoload.php';
 
// 执行HTTP应用并响应
$http = (new App())->http;
 
$response = $http->run();
 
$response->send();
 
$http->end($response);
 
/usr/home/syu6901610001/htdocs/index.php
<?php
 
 
// 加载tp框架
require_once __DIR__ . '/public/index.php';
Arguments
  1. "/usr/home/syu6901610001/htdocs/public/index.php"
    

Environment & details:

empty
empty
empty
empty
empty
Key Value
DOCUMENT_ROOT
"/usr/home/syu6901610001/htdocs"
GATEWAY_INTERFACE
"CGI/1.1"
HTTP_ACCEPT
"text/html,image/png,image/jpeg,image/pjpeg,image/x-xbitmap,image/svg+xml,image/gif;q=0.9,*/*;q=0.1"
HTTP_ACCEPT_ENCODING
"gzip, identity;q=0.9"
HTTP_ACCEPT_LANGUAGE
"en, *"
HTTP_CONNECTION
"keep-alive"
HTTP_HOST
"www.ganzhixiang.com"
HTTP_REFERER
"http://www.ganzhixiang.com/en"
HTTP_USER_AGENT
"Mozilla/4.5 (compatible;  3.0x; Windows 98)"
PATH
"/bin"
PHPRC
"/var/www/php72/hichina_ini/syu6901610001"
QUERY_STRING
""
REDIRECT_DOCUMENT_ROOT
"/usr/home/syu6901610001/htdocs"
REDIRECT_GATEWAY_INTERFACE
"CGI/1.1"
REDIRECT_HTTP_ACCEPT
"text/html,image/png,image/jpeg,image/pjpeg,image/x-xbitmap,image/svg+xml,image/gif;q=0.9,*/*;q=0.1"
REDIRECT_HTTP_ACCEPT_ENCODING
"gzip, identity;q=0.9"
REDIRECT_HTTP_ACCEPT_LANGUAGE
"en, *"
REDIRECT_HTTP_CONNECTION
"keep-alive"
REDIRECT_HTTP_HOST
"www.ganzhixiang.com"
REDIRECT_HTTP_REFERER
"http://www.ganzhixiang.com/en"
REDIRECT_HTTP_USER_AGENT
"Mozilla/4.5 (compatible;  3.0x; Windows 98)"
REDIRECT_PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
REDIRECT_PATH_INFO
"en/cat_47/cat_49.html"
REDIRECT_PATH_TRANSLATED
"redirect:/index.php/cat_49.html"
REDIRECT_QUERY_STRING
""
REDIRECT_REMOTE_ADDR
"38.207.248.66"
REDIRECT_REMOTE_PORT
"58476"
REDIRECT_REQUEST_METHOD
"GET"
REDIRECT_REQUEST_URI
"/en/cat_47/cat_49.html"
REDIRECT_SCRIPT_FILENAME
"/usr/home/syu6901610001/htdocs/en"
REDIRECT_SCRIPT_NAME
"/en"
REDIRECT_SERVER_ADDR
"10.29.168.7"
REDIRECT_SERVER_ADMIN
"[email protected]"
REDIRECT_SERVER_NAME
"www.ganzhixiang.com"
REDIRECT_SERVER_PORT
"80"
REDIRECT_SERVER_PROTOCOL
"HTTP/1.1"
REDIRECT_SERVER_SIGNATURE
""
REDIRECT_SERVER_SOFTWARE
"Apache"
REDIRECT_STATUS
"200"
REDIRECT_TZ
"Asia/Shanghai"
REDIRECT_UNIQUE_ID
"ZcKP@QodqAcABpVeD@sAAAAD"
REDIRECT_URL
"/en/cat_47/cat_49.html"
REDIRECT_gzip_only_text_html
"1"
REMOTE_ADDR
"38.207.248.66"
REMOTE_PORT
"58476"
REQUEST_METHOD
"GET"
REQUEST_URI
"/en/cat_47/cat_49.html"
SCRIPT_FILENAME
"/usr/home/syu6901610001/htdocs/index.php"
SCRIPT_NAME
"/index.php"
SERVER_ADDR
"10.29.168.7"
SERVER_ADMIN
"[email protected]"
SERVER_NAME
"www.ganzhixiang.com"
SERVER_PORT
"80"
SERVER_PROTOCOL
"HTTP/1.1"
SERVER_SIGNATURE
""
SERVER_SOFTWARE
"Apache"
TZ
"Asia/Shanghai"
UNIQUE_ID
"ZcKP@QodqAcABpVeD@sAAAAD"
gzip_only_text_html
"1"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1707249657.2445
REQUEST_TIME
1707249657
empty
0. Whoops\Handler\PrettyPageHandler
友情链接:AG真人·(中国)官方网站 - App STORE2024  凯发·k8国际(中国)首页登录  天生赢家一触即发·凯发k8国际(中国)官方网站  k8凯发(中国)天生赢家·一触即发  凯发·(中国)k8国际首页登录  k8凯发(中国)天生赢家·一触即发  k8凯发(中国)天生赢家·一触即发  J9九游【中国大区】真人游戏第一品牌  Z6·尊龙凯时「中国」官方网站  k8凯发_k8凯发·(中国)官方网站