0

PHPはこれを行うことができますか?

私はこのような複数の配列を持っています:

$x[1][2][3] = 10;
$x[1][2][4] = 5;
$x[1][2][3] = 2;

私が使用しているときprint_r($x)結果は次のとおりです。

配列
(
    [1] => 配列
        (
            [2] => 配列
                (
                    [3] => 2
                    [4] => 5
                )

        )

)

私はこれをしたい:

配列
(
    [1] => 配列
        (
            [2] => 配列
                (
                    [3] => 12
                    [4] => 5
                )

        )

)

結果を取得するための関数またはスクリプトを知っているかもしれませんが、私は知りません。

ご協力いただきありがとうございます..

4

3 に答える 3

1

あなたはこれを行うことができます:

$x[1][2][3] += 10;
$x[1][2][4] += 5;
$x[1][2][3] += 2;

問題は、キーが定義されていない場合、NOTICE が表示されることです。そのため、たとえばキーが存在するかどうかを前に確認する必要がありますif(!isset($x[1][2][3])) {$x[1][2][3] = 0;}

于 2013-01-29T11:00:13.817 に答える
1

追加 ?

$x[1][2][3] = 10;
$x[1][2][4] = 5;
$x[1][2][3] = $x[1][2][3] + 2;
于 2013-01-29T10:59:23.483 に答える
0

あなたがしたいのはインクリメントです:

@$x[1][2][3] += 10;
@$x[1][2][4] += 5;
@$x[1][2][3] += 2;

@エラーを抑制するためのものです。次のようにインデックスを初期化する方がより適切で明示的です。

$x[1][2][3] = 0;
$x[1][2][4] = 0;

$x[1][2][3] += 10;
$x[1][2][4] += 5;
$x[1][2][3] += 2;
于 2013-01-29T11:06:20.267 に答える