2012-06-18 83 views
0

我從幾個文本框中創建一個數組。我需要移動數組中的元素以插入到數據庫中。這裏是數組:PHP Array,移動元素

array(2) { [0]=> string(7) "nameone" [1]=> string(7) "nametwo" } 
array(2) { [0]=> string(6) "ageone" [1]=> string(6) "agetwo" } 
array(2) { [0]=> string(13) "parentnameone" [1]=> string(13) "parentnametwo" } 
array(2) { [0]=> string(14) "parentemailone" [1]=> string(14) "parentemailtwo" } 
array(2) { [0]=> string(14) "parentphoneone" [1]=> string(14) "parentphonetwo" } 

我想用一個INSERT語句,如落得:

nameone, ageone, parentnameone, parentemailone, parentphoneone 

和下一行插入會

nametwo, agetwo, parentnametwo, parentemailtwo, parentphonetwo 

我試圖創建一個數組,每個循環都有多個,但是我最終得到一個數組,我需要移動這些數字,這些數字會帶回我原來的問題。 有沒有一種方法來這個女孩?

+0

[在PHP中移位多維數組]可能的副本(http://stackoverflow.com/questions/797251/transposing-multidimensional-arrays-in-php) –

+0

哪個DB,您可能能夠將這些數據綁定爲參數。 – user7116

+0

@ six,DB = Mysql –

回答

1

好吧,可以說你的主數組包含5個數組,每個數組有2個元素。讓我們調用$ mainArr。第一行中的「2」是否定的。每個子陣列中的元素。或者如果子陣列的長度不相等,那麼其最大子陣列的長度就是其長度。

for($i=0;$i<2;$i++) { 
foreach($mainArr as $key => $a) { 
    $ins[$i][] = $a[$i]; 
} // form an array with insert elements 
} 

// traverse that to form inserts 
foreach($ins as $key => $arr) { 
     $statements[] = implode(",", $ins[$key]); 
} 

echo '<pre>'; 
print_r($statements); 

我認爲這就是你想要的。如果沒有,請告訴我。希望有所幫助!

0
$l = count($array[0]); 
for ($i=0; $i<$l; $i++) { 
    // access values like this: 
    $name = $array[0][$i]; // equals nameone first time and nametwo second time 
    $age = $array[1][$i]; 
    $parentname = $array[2][$i]; 
    $parentemail = $array[3][$i]; 
    $parentphone = $array[3][$i]; 

    // insert into DB here 
} 
-1
#!/usr/bin/php                 
<?php 
    $val = array('name', 'age', 'parentname', 'parentemail'); 
    $key = array('one', 'two', 'three', 'four', 'five'); 

    $valone = array(); 
    foreach ($val as $k) 
    array_push($valone, $k.$key[0]); 

    var_dump($valone); 

?> 

輸出:

array(4) { 
    [0]=> 
    string(7) "nameone" 
    [1]=> 
    string(6) "ageone" 
    [2]=> 
    string(13) "parentnameone" 
    [3]=> 
    string(14) "parentemailone" 
    } 

這是你要你做什麼?