2013-03-06 114 views
0

1)將複選框的數組發送到php 2)比較POSTED數組以查看是否在master數組中。 3)如果是,則增加「1」,在新的數組 4),如果它不是主陣列中,然後添加一個「0」的新的數組檢查第一個數組中的值是否在第二個數組中,然後創建第三個數組

在這裏,在是我:

$posted_array = array("8", "9", "12", "17"); 

$master_array = array("8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20"); 

$db_input_array = array(); 

foreach($master_array as $key => $array_value) { 
    foreach($posted_array as $posted_key => $posted_value) { 
     if($array_value == $posted_value) { 
      $db_input_array[$array_value] = "1"; 
     } else { 
      $db_input_array[$array_value] = "0"; 
     } 
    } 
} 

print_r($db_input_array); 

期望的結果:

Array ( 
    [8] => 1 
    [9] => 1 
    [10] => 0 
    [11] => 0 
    [12] => 1 
    [13] => 0 
    [14] => 0 
    [15] => 0 
    [16] => 0 
    [17] => 1 
    [18] => 0 
    [19] => 0 
    [20] => 0 
) 
+0

哪些CUR租金結果? – Cashew 2013-03-06 03:29:49

+0

注意:php有一個'array_intersect($ arr1,$ arr2)',它將返回一個包含'$ arr1'和'$ arr2'之間公共元素的數組。 – 2013-03-06 03:40:55

回答

3
$db_input_array = array(); 
foreach($master_array as $m){ 
    if(in_array($m, $posted_array)){ 
     $db_input_array[$m]=1; 
    }else{ 
     $db_input_array[$m]=0; 
    } 
} 

http://codepad.org/NaW5zHe5

相關問題