yii2 - 为什么 Yii2 想象给 Class 'common\models\Box' not found 错误
问题描述
我是 Yii 框架的新手,我正在通过一个简单的项目来学习这一点。在这个项目中,我使用了名为 yiisoft/yii2-imagine 的扩展来降低图像的分辨率,但这给了我未知的错误。
我调整图像大小的代码:
use yii\imagine\Image;
Image::getImagine()
->open($thumbnail_path.'/'.$this->video_id.'.jpg')
->thumbnail(new Box(500,500))
->save();
错误
Class 'common\models\Box' not found
我该如何解决这个错误?
解决方案
看起来您忘记指定应该使用哪个 Box 类。默认情况下,phpBox
在您当前的命名空间中寻找类,因此它正在寻找common\models\Box
. 我猜您正在尝试使用 Imagine 的Imagine\Image\Box
类,因此您需要添加这样的 use 语句:
use Imagine\Image\Box;
另一种选择是在代码中使用完全限定的类名:
use yii\imagine\Image;
Image::getImagine()
->open($thumbnail_path.'/'.$this->video_id.'.jpg')
->thumbnail(new \Imagine\Image\Box(500,500))
->save();
推荐阅读
- c++ - 区分逗号运算符与逗号分隔符的麻烦
- windows - 当我使用动态 args powershell trim 命令输出运行 exe 时。怎么修?
- xml - C# XML 序列化空值但完整的属性声明
- angular - 点击语言作品 1 次 3
- javascript - Vue3 组合 API 数据存储的多个实例
- c# - 将带有样式的文本框文本从模板绑定到视图模型
- ld - ld:警告:找不到入口符号_start;
- python-3.x - ICMP - 如何在请求中保留不同数据的同时修复“未找到响应” - 回复
- node.js - CORS 错误:尽管设置了代理,但请求的资源上不存在“Access-Control-Allow-Origin”标头
- android - 如何在 Android 上将 Qt 应用程序安装为系统应用程序?