php – imagesx()期望参数1是资源,给定布尔值

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – imagesx()期望参数1是资源,给定布尔值脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用的是图像缩略图库(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): Laravel\Error::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): Laravel\Routing\Controller->response('crawl_next_item',Array)
#9 /home/dev/public_html/laravel/routing/controller.PHP(165): Laravel\Routing\Controller->execute('crawl_next_item',Array)
#10 /home/dev/public_html/laravel/routing/route.PHP(153): Laravel\Routing\Controller::call('crawl.cl@(:1)',Array)
#11 /home/dev/public_html/laravel/routing/route.PHP(124): Laravel\Routing\Route->response()
#12 /home/dev/public_html/laravel/laravel.PHP(165): Laravel\Routing\Route->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上创建一个问题,以便我可以跟进:-)

脚本宝典总结

以上是脚本宝典为你收集整理的php – imagesx()期望参数1是资源,给定布尔值全部内容,希望文章能够帮你解决php – imagesx()期望参数1是资源,给定布尔值所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。