我在类保存
中使用对象图像的类 FieldFilenamespace wti\Model;
use wti\Image;
class FieldFile
{
public function save(Image $image, array $files): void
{...}
}
但是当我在其他类中使用此方法时:
namespace wti;
use wti\Image;
use wti\Model\FieldFile;
class MainWI
{
public function load()
{
$loader = new FieldFile();
$loader->save($_FILES);
// or $loader->save(Image, $_FILES);
}
}
我收到错误:致命错误:未捕获TypeError:参数1传递给wti \ Model \ FieldFile :: save()必须是wti \ Image的实例
帮帮我,我的代码错了?
P.S。图像是abstarct类。
答案 0 :(得分:1)
你不需要在Files参数之前发送一个Image参数:
$loader->save($Image, $_FILES);
或者也改变了保存方法:
save(array $files)
并在保存中实例化图像。
答案 1 :(得分:0)
您没有在FieldFile类中发送Image实例来保存功能 看看下面的代码。
namespace wti\Model;
use wti\Image;
class FieldFile
{
public function save(Image $image, array $files): void
{...}
}
namespace wti;
use wti\Image;
use wti\Model\FieldFile;
class MainWI
{
public function load()
{
// here you should create the image instance like
$image = new Image();
$loader = new FieldFile();
//$loader->save($_FILES);
$loader->save($image, $_FILES);
}
}