i手动下载了MPDF 8文件到应用程序Hird-party
..也在应用程序\ psr \ log。
遇到了一个未被发现的例外 类型:TypeError
Message:mpdf \ serviceFactory :: getServices():参数#2($ logger) 必须是类型的psr \ log \ psr \ log \ loggerinterface,psr \ log \ nulllogger 给出,被称为 D:\ wamp \ www espplication hird_party \ mpdf \ mpdf \ mpdf.php在行1092上 fileName: D:\ wamp \ www espplication hird_party \ mpdf \servicefactory.php
线编号:44
mpdf.php文件 部分我有错误
$this->logger = new NullLogger(); $originalConfig = $config; $config = $this->initConfig($originalConfig); $serviceFactory = new ServiceFactory($container); $services = $serviceFactory->getServices( $this, $this->logger, $config, $this->languageToFont, $this->scriptToLanguage, $this->fontDescriptor, $this->bmp, $this->directWrite, $this->wmf );
Nulllogger.php
<?php
namespace Psr\Log;
/**
* This Logger can be used to avoid conditional log calls.
*
* Logging should always be optional, and if no logger is provided to your
* library creating a NullLogger instance to have something to throw logs at
* is a good way to avoid littering your code with `if ($this->logger) { }`
* blocks.
*/
require_once APPPATH . 'third_party/psr/log/src/Psr/Log/AbstractLogger.php';
class NullLogger extends AbstractLogger
{
/**
* Logs with an arbitrary level.
*
* @param mixed[] $context
*
* @throws \Psr\Log\InvalidArgumentException
*/
public function log($level, string|\Stringable $message, array $context = []): void
{
// noop
}
}
请帮助我继续前进。目前,我使用MPDF 6。我想将其升级到PHP 8。
多作曲家安装而不是手册
trory也安装PSR日志。
composer require psr/log
我建议您不要在需要之前修改供应商文件中的任何代码。