0

PHPの初心者として、私はphpで配列の要素を計算する際に問題に遭遇します

$effect=array("a"=>array(1,2),"b"=>array(1,2),"c"=>array(1,2));

このように結果を出したいだけです

$effect['a'][0]=$effect['a'][0]/$effect['a'][1];
$effect['b'][0]=$effect['b'][0]/$effect['b'][1]; 
$effect['c'][0]=$effect['c'][0]/$effect['c'][1];    

これを1つずつ行うことを除いて、foreachまたは他のループ方法でこの計算を行う方法

4

3 に答える 3

1

あなたの配列構文は少しずれています。である必要があります$effect['a'][0]

ループは簡単でforeach、正しいアイデアでした。
次を使用して、すべての文字を反復処理するために使用できます。

 foreach ($effect as $letter => $numbers) {

     ...

 }

次に、割り当て/分割行をループに入れて、固定などを変数に'a'置き換え'b'ます$letter

于 2013-02-22T02:30:45.937 に答える
0

このようなものが必要ですか?

foreach ($effect as $key => $val)
{

    $results[$key] = $val[0] / $val[1];

}

print_r($results);
于 2013-02-22T02:32:54.883 に答える
0

また、PHP の直観に反することの 1 つは、配列がデフォルトで値渡しされることです。& を使用して、配列への参照を取得できます

$effects =array("a"=>array(1,2),"b"=>array(1,2),"c"=>array(1,2));
foreach ( $effects as $key => &$effect ) {
   $effect[0] = $effect[0]/$effect[1];
   unset($effect);
}
print_r( $effects );
于 2013-02-22T02:36:23.367 に答える