$data=array(); //創(chuàng)建臨時變量用以存儲數(shù)據(jù)
網(wǎng)站建設哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、小程序制作、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了莊河免費建站歡迎大家使用!
$length=count($你的array名['cwidth']); //數(shù)你有多少行數(shù)據(jù)
for($i=0; $i=$length; $i++){ //循環(huán)
$data[$i]['cwidth']=$你的array名['cwidth'];
$data[$i]['cheight']=$你的array名['cheight'];
}
出來的數(shù)據(jù)就像是這樣:
array(2){
[0]=array(2){
['cwidth']=string(5) "593px"
['cheight']=string(5) "203px"
}
[1]=array(2){
['cwidth']=string(5) "598px"
['cheight']=string(5) "111px"
}
}
然后再用$db-add($data);插入數(shù)據(jù)
利用PHP對數(shù)組賦值時下標變量會自動遞增的特點,可以很方便用循環(huán)將數(shù)據(jù)存入一個數(shù)組。例如:$arr[] = 'a'; 這條語句會將字符a存入數(shù)組變量$arr中,如果$arr不存在則會新建一個;若已存在,則將$arr數(shù)組的下標變量遞增1后存入字符。也就是說,如果已有$arr[0]='a', 那么執(zhí)行 $arr[] = 'b'; 后,數(shù)組其實是進行了$arr[1] = 'b' 的操作。
有兩個方法可供選擇,一種是把數(shù)據(jù)存入csv文件,然后執(zhí)行l(wèi)oad data infile
還有一種就是類似于sql server里面的bulk insert,使用insert語句插入批量數(shù)據(jù),結合PHP的implode函數(shù),
可以很簡單的實現(xiàn)大批量數(shù)組數(shù)據(jù)的一次性插入。
[php] view plaincopy
$statement = "INSERT INTO table (title, type, customer) VALUES ";
foreach( $data as $row) {
$statement .= ' ("' . implode($row, '","') . '")';
}
不過大批量數(shù)據(jù)的插入,需要注意mysql在內(nèi)存上有限制:
bulk_insert_buffer_size變量的默認大小為8M, 是指單個線程占用的大小限制,設置為0,表示不做限制。
?php
$arr?=?array(
0?=?1100,
1?=?'天津市',
2?=?2210,
3?=?'沈陽市'
);
$sql?=?'';
foreach?($arr?as?$k?=?$v)?{
if?($k?%?2?==?0)?{
$no?=?$v;
continue;
}?else?{
$city?=?$v;
}
echo?"INSERT?INTO?tablename?(no,?city)?VALUES?($no,?$city)";
}
?
結果:
INSERT INTO tablename (no, city) VALUES (1100, 天津市)
INSERT INTO tablename (no, city) VALUES (2210, 沈陽市)
sql語句已經(jīng)輸出的,你query下就行,按照自己的數(shù)據(jù)套吧.
上面那個回答運行不怎么對