2015-04-26 59 views
1

我寫了這樣的代碼(我使用MySQL,PDO,InnoDB的,Laravel4,本地主機& MAC):我可以在Laravel做多個MySQL工作嗎?

$all_queue = Queue1::all()->toArray(); //count about 10000 
ob_end_clean(); 

foreach($all_queue as $key=>$value) { 

    $priceCreate=array(...); 
    Price::create($priceCreate); 
    Queue1::where('id',$value['id'])->delete(); 
} 

這爲我工作(65毫克RAM使用),但是當它是工作,其他地區我的程序(例如其他表)不起作用。我甚至無法在MySQL上打開我的數據庫。我的程序和我的SQL等待,當進程完成時,他們工作。

我不知道我該怎麼做。 我認爲這不是laravel,這是爲我的PHP或MySQL配置。

this is my php.ini and mysql config

+0

這個代碼有錯誤... $ all_foreach()應該只是foreach() – maztch

回答

2

我認爲

$all_foreach($all_queue as $key=>$value) { 

foreach($all_queue as $key=>$value) { 

而且,你有沒有錯誤(已設置調試真正在你的應用程序配置)。 嘗試爲腳本設置沒有時間限制。

在php.ini

max_execution_time = 3600 ;this is one hour, set to 0 to no limit 

或者在代碼

set_time_limit(0) 

而如果它是一個記憶問題嘗試以釋放內存和取消沒有用的變量。我在長篇劇本中釋放空間的做法很好。

... 
}//end foreach loop 
unset($all_queue); //no longer needed, so unset it to free memory 
+0

我想我不能解釋我的問題。 – AmirAgha

+0

謝謝,但我的問題是,當該腳本正在工作,我無法訪問我的程序和我的數據庫的任何部分。我認爲它的PHP或MySQL配置,但我不知道。 – AmirAgha

+0

所以你的腳本加載時間很長或者不是這個問題? – Robin

相關問題