2012-06-15 22 views
0

我正在使用常規循環,但是當我在循環中放入大量數據時,它不起作用,是我們可以用來放大數據的任何方式在數組中?使用大型數組時遇到無數據收到錯誤PHP

$arr = array('Joe', 'Jack'); 
$arr2 = array(); 
foreach($arr as $val){ 
    $arr2[] = $val; 
} 
print_r($arr2); 

所以當$arr太大我得到一個沒有數據在瀏覽器中接收到的錯誤,

讚賞任何幫助。

回答

3

你可能想看看更輕量級SplFixedArray。它使用常規的連續內存塊來存儲數據,而不是傳統的散列結構。

第二種方法是用memory_limit的參數玩,但它不是好主意

ini_set('memory_limit', '256M'); 

第三種方式是吐你的陣列中的數據塊

+0

這是一個完全新東西對我來說,必須深入研究,謝謝你的幫助。 – thegrede

0

- 如果你正在使用GET ,在處理大量數據時將其更改爲POST。

- 改變形式類型ENCTYPE = 「多部分/格式數據」

- 更換post_max_size在php.ini

- 如果仍然不起作用,使用ini_set("memory_limit","-1")

相關問題