2016-09-25 分類: 網站建設
今天用程序做批量處理時,數據量有200多萬條,程序總是容易被卡死或者超時。于是做成一條一條數據處理,處理完一條就跳轉到下一條php代碼
echo "<script>window.location.href='http://aaarwkj.com//admin/Cxhl/News/wenzhang?id=$nextid'</script>";
echo '寫入數據';
在開20個窗口運行,但發(fā)現個問題,當上面代碼跳轉到其它頁面時,還要繼續(xù)往下執(zhí)行 寫入數據。由于我開了20個窗口一下就發(fā)現有大量的數據寫入說明:
在window.location.href后的代碼會執(zhí)行嗎? 答:會。
可能在網頁看不到了,你可以在網頁上右擊->查看源代碼 或者 在瀏覽器上用輸入:view-source:http://aaarwkj.com//admin/Cxhl/News/wenzhang?id=$nextid 刷新看。就可以看到 顯示了 寫入數據。
從頁面上看window.location.href(改變當前網頁的地址)會往后執(zhí)行代碼的。
我們理想是window.location.href后的代碼不要它在執(zhí)行。
php代碼:寫個 exit; 或exit("退出執(zhí)行"); 函數輸出一條消息,并退出當前腳本。
asp代碼:Response.End() 這里進行了中斷
同理:
break關鍵字可以用于for、while、do-while及switch語句中,用來跳出整個語句塊,結束當前循環(huán)的執(zhí)行。另外我們要特別注意,break語句總是跳出自己所在的那一層循環(huán)。當兩個for循環(huán)嵌套時,如果break語句位于內層的for循環(huán),它只會跳出內層的for循環(huán),但不會跳出外層的for循環(huán)。
?continue適用于各種循環(huán)結構中,不能用于其他地方,用于跳過本次循環(huán),執(zhí)行下一次循環(huán)。break可以跳出當前循環(huán),即整個循環(huán)都不會執(zhí)行了。而與break不同,continue是提前結束本次循環(huán),但會繼續(xù)執(zhí)行下一次的循環(huán)。在多層嵌套的循環(huán)中,continue也可以通過標簽指明要跳過的是哪一層循環(huán),并且同樣是只結束自己所在的循環(huán)。
return并不是專門用來結束循環(huán)的關鍵字,它可以用來結束一個方法或循環(huán)。當一個方法執(zhí)行到return語句時,該方法就會被結束。與break和continue不同的是,return是直接結束整個方法,不管這個return處在多少層的循環(huán)之內。
至此,創(chuàng)新互聯建站把return、break、continue這三個關鍵字給大家講了下。
本文的重點想說有 window.location.href 后,要結束下。避免程序在跳轉過程中執(zhí)行到下面的代碼了,因為程序在跳轉頁面時也是需要時間的,還沒完全跳轉程序就會往下執(zhí)行。
網頁名稱:window.location.href后的代碼會執(zhí)行嗎?
文章來源:http://aaarwkj.com/news27/48277.html
成都網站建設公司_創(chuàng)新互聯,為您提供企業(yè)網站制作、網站收錄、云服務器、網站維護、網站設計、外貿網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯
猜你還喜歡下面的內容