2016-06-28 5 views
0

どのように変数を知ることができますか?foreach内に格納された変数を分割する方法

foreach($tree as $key => $value){ 
    if (in_array($value['name'], $arr_folders)) { 
    ${'id_'.$value['name']} = $value['id']; 
    } 
    //how to know variables? 
    $id_??? 

は現在、私は$value['name']すなわち知っています。それは、1つ、2つ、3、などかもしれないが、彼らに私は配列でそれらを分割するために、ここで知りたいと思った

echo $id_one; 

を使用する方法。ローカルスコープ内

foreach (get_defined_vars() as $var_name => $var_value) { 
    if(strpos($var_name, 'id_') ===0){ 
     //it's your variable 
    } 
} 

しかし、店の変数が間違って見て:だから私はあなたのコードで変数を見つけることができます$id_one, $id_two,など。

+4

http://stackoverflow.com/help/how-to-ask慎重に読んでください –

+0

私は私の質問を編集しました。これは今はっきりしていると思いますか? – user3556802

+0

可能な複製http://stackoverflow.com/questions/38046534/how-to-assign-id-based-on-array-values –

答えて

1

何か?

<?php 
    $array = []; 

    foreach($tree as $key => $value){ 
     if (in_array($value['name'], $arr_folders)) { 
      $array[] = $value['id']; 
     } 
    } 

    print_r($array); 
+0

ありがとうございます。私はこれを試してみます。 – user3556802

+0

私が何かを修正/説明することによってあなたを助けることができるかどうか教えてください。これがうまくいくなら、それを受け入れられた答えとしてマークしてください:) – b0ne

+0

echo $ array [0];動作しません。 – user3556802

0

を引き起こすことになる

print_r($vars);

を使用することができます。

は、他の配列へのより良い店である場合があります。このような

$arIds = array(); 
foreach($tree as $key => $value){ 
    if (in_array($value['name'], $arr_folders)) { 
    $arIds['id_'.$value['name']] = $value['id']; 
    } 
} 
+0

私の編集した質問を再度確認してください。ありがとうございます。 – user3556802

関連する問題