php – imagesx()期望参数1是资源,给定布尔值
发布时间:2020-12-13 16:18:20 所属栏目:PHP教程 来源:网络整理
导读:我使用的是图像缩略图库(Laravel的 resizer bundle),它从目录中获取jpg并使用imagesx()以不同的大小保存该图像.这在大多数情况下都可以正常工作. 问题:但有时当有一批图像需要处理时,我会收到以下错误.调试时,我做到了 ....print_r($this-image);imagesx($t
我使用的是图像缩略图库(Laravel的
resizer bundle),它从目录中获取jpg并使用imagesx()以不同的大小保存该图像.这在大多数情况下都可以正常工作.
问题:但有时当有一批图像需要处理时,我会收到以下错误.调试时,我做到了 .... print_r($this->image); imagesx($this->image); .... PHP输出 Resource id #64Resource id #67Resource id #73Resource id #76Resource id #82Resource id #85Resource id #91Resource id #94Resource id #100Resource id #103Resource id #109Resource id #112Resource id #118Resource id #121Resource id #127Resource id #130Resource id #136Resource id #139Resource id #145Resource id #148Resource id #154Resource id #157Resource id #163Resource id #166 Unhandled Exception Message: imagesx() expects parameter 1 to be resource,boolean given Location: /home/dev/public_html/bundles/resizer/resizer.php on line 69 Stack Trace: #0 /home/dev/public_html/laravel/laravel.php(40): LaravelError::native(2,'imagesx() expec...','/home/dev/publi...',69) #1 [internal function]: Laravel{closure}(2,69,Array) #2 /home/dev/public_html/bundles/resizer/resizer.php(69): imagesx(false) #3 /home/dev/public_html/bundles/resizer/resizer.php(81): Resizer->__construct('/home/photos/pu...') #4 /home/dev/public_html/application/controllers/crawl/cl.php(369): Resizer::open('/home/photos/pu...') #5 /home/dev/public_html/application/controllers/crawl/cl.php(315): Crawl_CL_Controller->save_photos(Array,2516533,'2012-09-17 18:4...') #6 [internal function]: Crawl_CL_Controller->action_crawl_next_item() #7 /home/dev/public_html/laravel/routing/controller.php(325): call_user_func_array(Array,Array) #8 /home/dev/public_html/laravel/routing/controller.php(285): LaravelRoutingController->response('crawl_next_item',Array) #9 /home/dev/public_html/laravel/routing/controller.php(165): LaravelRoutingController->execute('crawl_next_item',Array) #10 /home/dev/public_html/laravel/routing/route.php(153): LaravelRoutingController::call('crawl.cl@(:1)',Array) #11 /home/dev/public_html/laravel/routing/route.php(124): LaravelRoutingRoute->response() #12 /home/dev/public_html/laravel/laravel.php(165): LaravelRoutingRoute->call() #13 /home/dev/public_html/public/index.php(34): require('/home/dev/publi...') #14 {main} 与上面的堆栈跟踪一起,您可以看到$this->图像在其资源ID#166之后立即为false. 知道是什么导致了这个吗?我不明白为什么它有时可能是假的.谢谢! 解决方法
发生这种情况是因为该文件的mime类型未被识别或不是jpg / jpeg / png / gif.
在resizer.php的第196行,$this->图像被设置为false. 如果你无法让它工作,请在Github上创建一个问题,以便我可以跟进:-) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |