tp6报错: [0] InvalidArgumentException in Container.php line 467

tp6报错: InvalidArgumentException in Container.php line 467

方法参数错误:status

出现此错误的原因是,参数错误,不支持这样的参数写法。
例如下面类的构造函数

<?php
#创建:php think make:controller admin@Settings
declare(strict_types=1);

namespace app\admin\controller;

use app\Request;
use app\base\controller\ServerResponse;
class Settings extends Base
{
    private $table_name = 'system_settings';
    private $file_upload_settings = 'file_upload_settings';
    private $request;

    private $s = array();

    public function __construct(Request $request,
                                ServerResponse $ServerResponse)
    {
        $this->request = $request;
        parent::__construct($request);


    }
}

在TP中不支持多个类的依赖注入,去掉ServerResponse $ServerResponse 即可。但是在laravel中则没有限制。
例如:

/**
     * Create a new query builder instance.
     *
     * @param  \Illuminate\Database\ConnectionInterface  $connection
     * @param  \Illuminate\Database\Query\Grammars\Grammar  $grammar
     * @param  \Illuminate\Database\Query\Processors\Processor  $processor
     * @return void
     */
    public function __construct(ConnectionInterface $connection,
                                Grammar $grammar = null,
                                Processor $processor = null)
    {
        $this->connection = $connection;
        $this->grammar = $grammar ?: $connection->getQueryGrammar();
        $this->processor = $processor ?: $connection->getPostProcessor();
    }
发布了124 篇原创文章 · 获赞 10 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42433970/article/details/102956811