検索

ホームページ  >  に質問  >  本文

php - アドバイスを求める: 2つのフィールドstore_idとsourceが同じ場合に2次元配列をマージするにはどうすればよいですか?

リーリー

2つのフィールドstore_idとsourceを同じにして、このような配列をマージするにはどうすればよいですか?

过去多啦不再A梦过去多啦不再A梦2713日前712

全員に返信(3)返信します

  • 三叔

    三叔2017-06-10 09:49:30

    既製の関数はありません。自分でしか書けないし、マージの意味が分かりません。 。 。
    データを循環できます。
    新しいデータは 2 つのフィールド $store_id.'_'.$source をキーとして使用します
    $data[$store_id.'_'.$source][] = $_data;
    この方法、または希望する方法で処理します

    返事
    0
  • 漂亮男人

    漂亮男人2017-06-10 09:49:30

    コードは書きたくない、私の考えだけです
    1. 合併以降、idとgoodsidを上書きできない場合は、store_idとsourceが親クラスとなる3層構造の配列のみを使用できます。 1 つのレイヤー、id および Goodsid サブクラスも 1 つのレイヤーです。
    2. 同じstore_idとsourceを持つ2つのフィールドをマージします。つまり、新しい要素がある場合は、すべての情報を再追加し、子要素を追加します。直接

    返事
    0
  • ringa_lee

    ringa_lee2017-06-10 09:49:30

    ハッシュマップを使用したマッピング方法:
    1. ハッシュマップの形式でデータ構造を構築し、store_id とソースの組み合わせをキーとして使用し、変数配列を値として使用し、store_id とソースに対応するデータ全体を保存します。変数配列
    2. 二次元配列を容易にするために、store_id とsource によって結合されたキーが構築されたデータ構造にすでに存在する場合、store_id とsource に対応するデータ全体をキーに対応する変数配列に入れます。存在しない場合は、追加します。新しいキーと値のペアでは、source と store_id を組み合わせた値がキーとして使用され、変数配列が値として使用されます。 sourceとstore_idに対応するデータ全体をkeyに対応する変数配列に入れます。
    3. 各キーに対応する配列内のデータをマージするのに便利なハッシュマップ。

    返事
    0
  • キャンセル返事