[請益] 關於 PHP Fatal error: Allowed memory size..

看板PHP作者 (Fly機飛阿飛)時間12年前 (2011/08/25 17:04), 編輯推噓1(1020)
留言21則, 6人參與, 最新討論串1/1
我在網路上找一個使用 imagecreatefromjpeg .. imagecreatefromgif 來改變圖片大小的函式。 原本遇到的問題是預設的 8M 不夠用 所以我找方法,用 ini_set( memory_limit ) 來改變 (我知道可以改 php.ini,但是未來 server 不一定能修改,所以先用這個測試) 起初當然是可以修改比較大的圖片了 但是上傳到一定的大小後,他又會丟出一樣的ERROR 設定 12M => Fatal error: Allowed memory size of 12582912 設定 18M => Fatal error: Allowed memory size of 18874368 .. 反正到後來上傳到一定量,照樣還是會被 limit 住 我想這個問題應該是可以釋放記憶體解決 但是網路我找不到類似的資料是用來釋放的 (有些還寫重開APACHE .. 但以後總不可能這樣) 所以想問有人有類似狀況能夠解決的嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.250.247.227

08/25 21:43, , 1F
裝imagemagick,再用exec執行convert。
08/25 21:43, 1F

08/25 21:44, , 2F
不是所有的dirty job都要在php裡做。
08/25 21:44, 2F

08/26 00:16, , 3F
我現在的重點就是,server不是我管的..
08/26 00:16, 3F

08/26 00:16, , 4F
所以任何安裝其他插件甚至修改php.ini 都得排除
08/26 00:16, 4F

08/26 18:44, , 5F
output_buffering
08/26 18:44, 5F

08/26 20:38, , 6F
要處理多大的圖,基本上就是要先配置同樣的大小的記憶體區
08/26 20:38, 6F

08/26 20:38, , 7F
塊來用,要如何省??
08/26 20:38, 7F

08/26 21:04, , 8F
重點是我的圖沒這麼大,我需要的是美處理完一張就釋放
08/26 21:04, 8F

08/26 21:05, , 9F
問題是他會累積,不會釋放...所以設定多少就累積到多少
08/26 21:05, 9F

08/26 23:22, , 10F
那就難了 |D
08/26 23:22, 10F

08/27 13:06, , 11F
有 imagedestroy() 嗎?
08/27 13:06, 11F

08/27 15:09, , 12F
18M 一定太小的啦... 放心的設 256M 吧
08/27 15:09, 12F

08/27 15:59, , 13F
就算256M , 等上傳的量到達一樣給你說爆滿..
08/27 15:59, 13F

08/27 15:59, , 14F
這才是我主要的問題..
08/27 15:59, 14F

08/27 16:57, , 15F
程式碼貼上來看看,你是用陣列在處理圖片嗎?
08/27 16:57, 15F

08/27 16:58, , 16F
還是沒有imagedestroy()??
08/27 16:58, 16F

08/27 21:57, , 17F
似乎沒有這個程式碼,我回公司再貼,程式碼不在
08/27 21:57, 17F

08/27 21:57, , 18F
網路也臨時找不到..
08/27 21:57, 18F

08/31 11:22, , 20F
第三個 david 的方法, 也是會有同樣問題。
08/31 11:22, 20F

08/31 11:22, , 21F
我把 apache 重開後 , memory 一樣沒 free 掉
08/31 11:22, 21F
文章代碼(AID): #1ELX0SQC (PHP)