2017-01-21 49 views
0
$niz = array(
     'fruit1' => 'apple', 
     'fruit2' => 'orange', 
     'fruit3' => 'grape', 
     'fruit4' => 'watermelon', 
     'fruit5' => 'grapefruit' 
     ); 

    $max = 'yellow'; 
    $niz2 = array(); 
    $niz3 = array(); 

    foreach($niz as $k => $v){ 

     if (strlen($v) <= strlen($max)) { 
      array_push($niz2, $v); 
       } 
     else { 
     $niz3[$niz[$k]]=$v; 
      } 
    } 
    print_r($niz3); 

How can I get the appropriate key from the $niz array in my $niz3   associative array in the else statement? 

也就是說,陣列([fruit4] =>西瓜 [fruit5] =>柚子 )PHP用正確的鍵填充關聯數組

我得到: 陣列([西瓜] =>西瓜 [柚子] =>柚子 )

+1

只是'$ niz3 [$ k] = $ v;'? –

回答

3

你需要改變$niz3[$niz[$k]]=$v;$niz3[$k]=$v;

$k是「鑰匙」,由passiing成$niz您正在訪問的值,你已經定義爲$v