試試這樣
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比婁星網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式婁星網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋婁星地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。
$tmp_data = $this-contracts;
foreach($tmp_data as $k = $v){
$v["khdq"] = $this-getNameById($v["khdq"],"khdq");
}
$this-contracts = $tmp_data;
unset($tmp_data);
foreach($this-contracts as $k = $v){
這樣不成功是因?yàn)?foreach 此方法僅在被遍歷的數(shù)組可以被引用時才可用(例如是個變量)。
就是說必須是變量才能在foreach 中傳引用
php代碼是在服務(wù)器執(zhí)行的,執(zhí)行完畢后再把結(jié)果發(fā)送回前端,所以前端的js如何運(yùn)行就跟服務(wù)器沒有任何關(guān)系了。你可以在瀏覽器中查看一下html源碼,會發(fā)現(xiàn)它的js部分是這樣的:
script type="text/javascript"
setInterval(function(){
document.write(1)
},1000);
/script
這不就是連續(xù)不斷的輸出1嗎?
請注意:php是運(yùn)行在后臺的,而js是運(yùn)行在前端的,原則上兩者是涇渭分明、互不干涉的,php只能把數(shù)據(jù)傳送給js,但不能夠?qū)s的運(yùn)行進(jìn)行控制和中途干預(yù);js由于是運(yùn)行于php之后的,所以也不能直接傳送數(shù)據(jù)給php,更不能直接參與php的運(yùn)行,只能通過表單提交(頁面會刷新)或ajax(頁面不刷新)的方式向后臺傳送數(shù)據(jù)。
給你個思路
先最大化 PHP 效率充分利用 系統(tǒng)資源。
把 sql 拆開比如2萬一個用一個 php 去跑 總共用5個 php 一起跑。
然后最大化 mysql 效率
查一下mysql 的瓶頸在哪。針對性的去優(yōu)化。
查詢慢 就看看索引什么的
寫慢就查查 buffer 什么的。
這里強(qiáng)烈建議讀寫分離。
用不通的數(shù)據(jù)庫實(shí)例去分別處理讀寫。
再看看磁盤 IO 性能??纯搓?duì)列數(shù)據(jù)。不行就上陣列?;蛘邌伪聿渴饐蝹€磁盤。或者讀寫在不同的磁盤進(jìn)行。
當(dāng)然用緩存也可以。
比如把10萬條都獨(dú)出來存到 memcache 等內(nèi)存緩存中。循環(huán)處理數(shù)據(jù)的時候讀內(nèi)存的數(shù)據(jù)不用查數(shù)據(jù)庫。
還有終極大招。
你直接把數(shù)據(jù)庫都搬內(nèi)存里面。。。