0

これは私の疲れた目が見落としていた単純なものになるだろうという面白い気持ちがあります.

次の配列が与えられた場合$query:

Array ( [report_id] => 19 [facebook_id] => Array ( [0] => 12345678 [1] => 12345678 [2] => 12345678 [3] => 12345678 [4] => 12345678 ) ) 

(配列の値は気にしないでください[facebook_id]。例のためにそこに入れただけです)

反復処理を行い、各値を関数に渡す必要があります。次の foreach ループを使用しています。ループ回数をテストすると、二重になります。

foreach ($query as $value) {
    $report_id = $query['report_id'];
    $looper = $query['facebook_id'];
    $i = 0;
    foreach ($looper as $inner) {
        if ($i == 0) {
            $facebook_id_list = $inner;
        } else {
            $facebook_id_list = $facebook_id_list.'|'.$inner;
        }
        $i++;
    }
}

すべてをエコー バックしたときの出力は次のとおりです。

19
12345678|12345678|12345678|12345678|12345678
19
12345678|12345678|12345678|12345678|12345678

私は最終的$facebook_id_listに自分の関数で を分解するつもりです。そのため、多次元配列を変数に連結しています。

私は何が欠けていますか?

4

2 に答える 2

1

ループは次のものに置き換えることができます。

$report_id = $query['report_id'];
$facebook_id_list = implode('|', $query['facebook_id']);

ループなし、2 回ループなし。

于 2013-05-24T03:02:49.830 に答える
0

$query に 2 つの要素があり、ループ内で $report_id と $looper を設定しているため、2 回ループしています。

幸運を!

于 2013-05-24T02:04:10.423 に答える