有什么问题想请楼主帮忙看一看的,可以把你的求助帖链接回复到这里试试,我会尽量帮忙。不过不能保证一定能解决你的问题。
欢迎各位捧场。
1 jimisun 2017-11-27 17:51:54 +08:00 via Android 额 小白 顶一下 有个疑问? php 分层吗 |
![]() | 2 Zephyros OP |
3 elfsundae 2017-11-27 21:17:11 +08:00 分层是啥意思 |
![]() | 7 anteros 2017-11-28 09:06:19 +08:00 protected function process($path)//路径地址 { $img = Image::make($path); $img->insert(Image::make($this->logo)->resize(105, 105), 'bottom-right', 15, 15); $spath = $path . 'loo.jpg'; $img->save($spath); unset($img); return $spath; } 循环执行这个方法三十次会超内存,怎么解决? |
8 sevenzhou1218 2017-11-28 09:47:47 +08:00 @php01 Image 没有 destroy()方法吗? 调用$img->destroy()试试呢 |
![]() | 10 anteros 2017-11-28 10:20:56 +08:00 @sevenzhou1218 直接 unset 掉$img 不行吗 |
11 sevenzhou1218 2017-11-28 11:06:01 +08:00 @php01 unset 只是断开一个变量到一个内存区域的连接,垃圾回收也要满足一定的条件在执行的吧,因此 unset 后不一定会立马被垃圾回收。这个只是我的理解。可能不太对。 |
![]() | 12 Zephyros OP @sevenzhou1218 你的理解是对的。http://php.net/manual/en/language.types.resource.php @php01 你需要检查是否有什么东西还在指向 Image::make($path)所返回的这个资源。 必须要检查你的 Image 类。我怀疑和 static 属性有关,但我的怀疑不一定正确。 |
![]() | 15 chnyang 2017-11-28 14:55:34 +08:00 希望楼主介绍一些后台开发好用的类库 |
![]() | 16 Zephyros OP @php01 不知你的问题现在解决了没有。 如果还没有解决的话,不妨你把这一段代码剥离出来(但要能运行),连同 Image 类和 laravel 框架也带上,然后放仓库里,别人要复现此 bug 会容易一些,好帮你解决问题。 |
![]() | 17 Zephyros OP |