环境是 php7.1+laravel,装了 php-imagick 扩展,代码如下
try{
$image = new Imagick();
$image->readImage($_FILES[$name]['tmp_name']);
}
catch (Exception $e)
{
echo $e->getMessage();
}
在 readimage 的时候异常报错 Imagick::readImage not implemented
图片文件数据
array:5 [
"name" => "153_140909152250_5.jpg"
"type" => "image/jpeg"
"tmp_name" => "/tmp/phpwCeZlE"
"error" => 0
"size" => 345930
]
这个报错有点不明所以,不知道到底是哪出了问题,图片应该是没问题的,不过在服务器的 /tmp 没找到这个文件名
1
owenliang 2017-06-09 17:41:29 +08:00
先把文件 move_uploaded_file 到其他目录,再读取。
|
2
Nagisa1992 OP @owenliang 试过了,不行
|
3
yimity 2017-06-09 18:08:17 +08:00 via iPhone
你看下那个英文是什么意思。
|
4
Nagisa1992 OP @yimity 方法未执行,所以我才说报错不明所以。。。这句报错完全无意义我感觉
|
5
kumakiti 2017-06-09 18:12:36 +08:00
Imagick::readImage not implemented
这个函数没有实现,你可以翻一翻源码,看看是否确实没实现 如果版本低了,高一点的版本说不定实现了 或者看看文档换个方法 |
6
sunmonster 2017-06-09 19:00:26 +08:00
方法用错了,你去看文档,它的参数是啥
|
7
mokeyjay 2017-06-09 19:06:34 +08:00 via Android
既然都用 laravel 了为何还这样写代码……
|
8
gaocheng 2017-06-09 19:32:40 +08:00
没有图片吧,上传成功了吗?
|
9
explon 2017-06-09 19:38:37 +08:00
看了下我的项目调用的是 readimageblob 不是 readimage
|
10
queue 2017-06-10 11:02:38 +08:00 via Android
laravel,当使用 php 自带的类或者拓展的时候印象中前面要加\,不太确定是不是这个问题。
另外,p 个 s,既然都上框架了,就不要用$_FILES 这样子的超级变量啦,不是有 Request 么 |