2012-02-18 121 views
-1

我想檢查數組中的值,如果退出,然後顯示「退出」搜索退出值,否則顯示「未在陣」 ..如何在二維數組

1)。 我創建一個數組=>

$browse['pro_id'] = $id; 
    $browse['pro_name'] = $mobile_details[0]['pro_name']; 
    $browse['pro_brand'] = $mobile_details[0]['pro_brand']; 
    $browse['pro_price_own'] = $mobile_details[0]['pro_price_own']; 
    $mob_arr = $browse; 
    print_r($browse); 

//此打印陣列這樣的..

Array 
(
    [pro_id] => mob810013034 
    [pro_name] => Galaxy Y S5360 
    [pro_brand] => Samsung 
    [pro_price_own] => 6291 
) 

2)。在這2次之後。我在上面給定陣列的Pusing數組=>

array_push($mob_arr,$browse); 
print_r($mob_arr); 

//This print array like this... 


Array 
(
    [pro_id] => mob810013034 
    [pro_name] => Galaxy Y S5360 
    [pro_brand] => Samsung 
    [pro_price_own] => 6291 

    [0] => Array 
     (
      [pro_id] => mobka10013042 
      [pro_name] => A 1 
      [pro_brand] => Karbonn 
      [pro_price_own] => 6000 
     ) 
) 

我想檢查在整個陣列[pro_id] = mobka10013042然後繼續;在$ mob_arr再次別的PUCH陣列

array_push($mob_arr,$browse); 

我使用in_array,但它不是在爲這個...

請大家給我的建議.....

+0

我認爲這將是更好,如果你使結構你的陣列更一致。否則你有任何其他原因這樣做? :) – 2012-02-18 05:58:33

+0

你能告訴我..如何使更好的結構數組... – 2012-02-18 06:00:48

+0

你的數組的第二個例子,你有一個混合結構將其他值放在一個一維關聯數組結構後,你'pro_price_own'索引索引0在數組中具有一組值,如果使用2維數組結構,那麼相同的關聯數組索引會使它保持一致,如果您可以一直這樣做,那麼您可以輕鬆地操作它。 – 2012-02-18 06:07:08

回答

0

嘗試創建這樣的結構:

$myarr = Array 
(
    [0] => Array 
     (
      [pro_id] => mob810013034 
      [pro_name] => Galaxy Y S5360 
      [pro_brand] => Samsung 
      [pro_price_own] => 6291 
     ) 

    [1] => Array 
     (
      [pro_id] => mobka10013042 
      [pro_name] => A 1 
      [pro_brand] => Karbonn 
      [pro_price_own] => 6000 
     ) 
) 

然後使用彈出檢索其值:

$mob_arr = array(); 
while(!empty($myarr)) 
{ 
    $temp = array_pop($myarr); 
    if($temp['pro_id']!='mobka10013042'){ 
     array_push($mob_arr,$temp); 
    } 
} 

if(empty($mob_arr)){ 
//actions when mob_arr variable is empty 
} else { 
    //if not 
} 
0

不知道的方法是什麼。但是這可能有助於開始。

$mob_arr = array(); 
$browse['pro_id'] = 'mob810013034'; 
$browse['pro_name'] = 'Galaxy Y S5360'; 
$browse['pro_brand'] = 'Samsung'; 
$browse['pro_price_own'] = '6291'; 
array_push($mob_arr,$browse); 

$browse['pro_id'] = 'mobka10013042'; 
$browse['pro_name'] = 'A 1'; 
$browse['pro_brand'] = 'Karbonn'; 
$browse['pro_price_own'] = '6000'; 

array_push($mob_arr,$browse); 


if(checkId($mob_arr, 'pro_id', 'mobka10013042')) { 
    print 'found the value...'; 
} else { 
    print 'no can not find the value...'; 
} 

function checkId($arr, $k, $v) { 
    foreach($arr as $browse) { 
    if($browse[$k] == $v) { 
     return true; 
    } 
    } 
    return false; 
} 
0
$i=0; 
foreach($mob_arr as $row) 
{ 
    if(is_array($row)) 
    { 
    if(in_array('mobka10013042',$row)) 
    { 
     $i=1; 
    } 
    } 
} 

if($i==1) 
{ 
    continue 
} 
else 
{ 
    // push another array 
}