2017-07-04 38 views
-1

私は別の$key Sの多くの配列を持っていると私が何をしたか$value
は、ユーザーがemailadresを挿入できるようにするためのフォームを作成しているとの新しい配列を埋めます。

<?php 
Array 
(
    [0] => [email protected] 
    [1] => 103646 
    [2] => Company 
    [3] => 1140 
    [4] => [email protected] 
    [5] => 103689 
    [6] => Company 
    [7] => 3400 
) 
?> 

私はすべての$valueが、それは自分のしていること、それをしたいと思い何:
その後foreachループこれはその配列の結果で実行を開始し、新しいarray

にすべての見つかったEMAILADDRESSの値を保存$key

私はそれを達成する方法を本当に知りません。

これは、スクリプトを作り、私の配列です:

<?php 
$saved = array(); 
$input = $_GET['emailaddress']; 
foreach ($data as $files){ 
    $bedrijf = $files['Name']; 
    $bill = $files['Bill']; 
    $amount = $files['Amount']; 
    $email = $files['email']; 
    if ($email == $input){ 
     foreach($files as $values){ 
      $saved[] = $values; 
     } 

    } 
} 
echo'<pre>'; 
print_r($saved); 
echo'</pre>'; 
?> 
+1

自身の鍵?あなたは例を挙げることができますか? – Exprator

+1

あなたの '$ data'はどのように見えますか? – Edwin

答えて

1

あなたは1つのforeachのことでそれを行うことができます。コードの複雑さを増やす必要はありません。

$i = 0; 
foreach ($data as $files){ 
    $bedrijf = $files['Name']; 
    $bill = $files['Bill']; 
    $amount = $files['Amount']; 
    $email = $files['email']; 
    if ($email == $input){ 
      $saved[$i]['email'] = $email; 
      $saved[$i]['Amount'] = $amount; 
      $saved[$i]['bill '] = $bill;  
      $saved[$i]['Name'] = $bedrijf ;  
      $i++; 
    } 
} 
+0

私はちょうどまた働くかもしれない解決策を提供します。そして、あなたが同じキーを必要とするなら、マルチディムアレイを作成する必要があります。 – urfusion

+0

彼は正しいと思った。 Thnxメイト。 – Interactive

1

これは、手動でインデックスをインクリメントまたは一回使用の変数を宣言するコードの膨張なしに、所望の多次元連想配列を提供する:意味で

foreach($data as $files){ 
    if($files['email']==$input){ 
     $saved[]=['Email'=>$files['email'],'Amount'=>$files['Amount'],'Bill'=>$files['Bill'],'Name'=>$files['Name']]; 
    } 
}