[0] HttpException in Product.php line 52

  1. }
  2. public function detail()
  3. {
  4. $id = $this->request->param('id');
  5. $products = Cache::get('product');
  6. if (isset($products[$id])) {
  7. $one = $products[$id];
  8. } else {
  9. throw new HttpException(404);
  10. }
  11. $product = \app\common\model\Product::with(['tags'=>['products'=>function($q){$q->where('state', 1)->order('id', 'desc')->limit(3);}, 'samples'=>function($q){$q->order('id', 'desc')->limit(3);}]])->find($id)->toArray();
  12. $tags = $product['tags'];
  13. // 相关产品
  14. $rel_products = array_column($tags, 'products');
  15. $rel_products = array_reduce($rel_products, function ($carry, $item){
  16. return array_merge($carry, $item);

Call Stack

  1. in Product.php line 52
  2. at Product->detail()
  3. at ReflectionMethod->invokeArgs(object(Product), []) in Container.php line 395
  4. at Container->invokeReflectMethod(object(Product), object(ReflectionMethod), ['id' => '27', 'convert' => false]) in Module.php line 131
  5. at Module->think\route\dispatch\{closure}(object(Request), object(Closure), null)
  6. at call_user_func_array(object(Closure), [object(Request), object(Closure), null]) in Middleware.php line 185
  7. at Middleware->think\{closure}(object(Request))
  8. at call_user_func(object(Closure), object(Request)) in Middleware.php line 130
  9. at Middleware->dispatch(object(Request), 'controller') in Module.php line 136
  10. at Module->exec() in Dispatch.php line 168
  11. at Dispatch->run() in App.php line 432
  12. at App->think\{closure}(object(Request), object(Closure), null)
  13. at call_user_func_array(object(Closure), [object(Request), object(Closure), null]) in Middleware.php line 185
  14. at Middleware->think\{closure}(object(Request))
  15. at call_user_func(object(Closure), object(Request)) in Middleware.php line 130
  16. at Middleware->dispatch(object(Request)) in App.php line 435
  17. at App->run() in index.php line 29

Environment Variables

GET Dataempty
POST Dataempty
Filesempty
Cookiesempty
Sessionempty
Server/Request Data
USER www
HOME /home/www
PATH_TRANSLATED redirect:/index.php/product/27.html/27.html
PATH_INFO /product/27.html
SCRIPT_NAME /index.php
REQUEST_URI /product/27.html
QUERY_STRING
REQUEST_METHOD GET
SERVER_PROTOCOL HTTP/2.0
GATEWAY_INTERFACE CGI/1.1
REDIRECT_URL /product/27.html
REMOTE_PORT 45420
SCRIPT_FILENAME /www/wwwroot/datu_web1/public/index.php
SERVER_ADMIN webmasterexample.com
CONTEXT_DOCUMENT_ROOT /www/wwwroot/datu_web1/public
CONTEXT_PREFIX
REQUEST_SCHEME https
DOCUMENT_ROOT /www/wwwroot/datu_web1/public
REMOTE_ADDR 35.175.212.5
SERVER_PORT 443
SERVER_ADDR 172.17.112.226
SERVER_NAME www.datolaser.com
SERVER_SOFTWARE Apache
SERVER_SIGNATURE <address>Apache Server at www.datolaser.com Port 443</address>
LD_LIBRARY_PATH /www/server/apache/lib
PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
HTTP_HOST www.datolaser.com
HTTP_USER_AGENT claudebot
HTTP_ACCEPT */*
proxy-nokeepalive 1
H2_STREAM_TAG 000
H2_STREAM_ID
H2_PUSHED_ON
H2_PUSHED
H2_PUSH off
H2PUSH off
HTTP2 on
SSL_TLS_SNI www.datolaser.com
HTTPS on
REDIRECT_STATUS 200
REDIRECT_H2_STREAM_TAG 000
REDIRECT_H2_STREAM_ID
REDIRECT_H2_PUSHED_ON
REDIRECT_H2_PUSHED
REDIRECT_H2_PUSH off
REDIRECT_H2PUSH off
REDIRECT_HTTP2 on
REDIRECT_SSL_TLS_SNI www.datolaser.com
REDIRECT_HTTPS on
FCGI_ROLE RESPONDER
PHP_SELF /index.php/product/27.html
REQUEST_TIME_FLOAT 1711632782.1291
REQUEST_TIME 1711632782
Environment Variablesempty
ThinkPHP Constantsempty