php - Question : Comment fusionner des tableaux à deux dimensions lorsque les deux champs store_id et source sont identiques ?
过去多啦不再A梦
过去多啦不再A梦 2017-06-10 09:47:30
0
3
724
array(5) {
  [0]=>
  array(14) {
    ["id"]=>
    string(3) "143"
    ["store_id"]=>
    string(3) "504"
    ["goodsid"]=>
    string(2) "15"
    ["source"]=>
    string(1) "2"
  }
  [1]=>
  array(14) {
    ["id"]=>
    string(3) "142"
    ["store_id"]=>
    string(3) "503"
    ["goodsid"]=>
    string(2) "33"
    ["source"]=>
    string(1) "2"
  }
  [2]=>
  array(14) {
    ["id"]=>
    string(3) "141"
    ["store_id"]=>
    string(3) "638"
    ["goodsid"]=>
    string(2) "41"
    ["source"]=>
    string(1) "1"
  }
  [3]=>
  array(14) {
    ["id"]=>
    string(3) "140"
    ["store_id"]=>
    string(3) "638"
    ["goodsid"]=>
    string(2) "41"
    ["source"]=>
    string(1) "1"
  }
}

Comment un tel tableau peut-il être fusionné si les deux champs store_id et source sont identiques ?

过去多啦不再A梦
过去多啦不再A梦

répondre à tous(3)
三叔

Pas de fonctions prêtes à l'emploi. Je ne peux l'écrire que moi-même et je ne comprends pas ce que vous entendez par fusionner. . .
Vous pouvez parcourir les données.
Les nouvelles données utilisent les deux champs $store_id.'_'.$source comme clé
$data[$store_id.'_'.$source][] = $_data;
De cette façon, ou de la façon dont vous souhaitez le gérer

漂亮男人

Je ne veux pas écrire de code, juste mes pensées
1 Depuis la fusion, si id et goodid ne peuvent pas être écrasés, nous ne pouvons utiliser qu'un tableau de structure à trois couches, c'est-à-dire que store_id et source sont la classe parent comme une couche, et les sous-classes id et goodid constituent une seule couche.
2. Fusionnez les deux champs avec le même store_id et la même source, c'est-à-dire fusionnez les deux champs dans un nouveau tableau comme valeur clé, ajoutez à nouveau toutes les informations. Sinon, ajoutez les éléments enfants. directement

左手右手慢动作

La méthode de mappage utilisant hashmap :
1. Construisez une structure de données sous forme de hashmap, utilisez la combinaison store_id et source comme clé, utilisez un tableau de variables comme valeur et stockez toutes les données correspondant au store_id et à la source dans le tableau de variables.
2. Pour faciliter le tableau bidimensionnel, si la clé combinée par store_id et source existe déjà dans la structure de données construite, alors placez toutes les données correspondant à store_id et source dans le tableau de variables correspondant à la clé. S'il n'existe pas, ajoutez-en un. La nouvelle paire clé-valeur utilise également la valeur combinée de source et store_id comme clé, et le tableau de variables comme valeur. Placez toutes les données correspondant à source et store_id dans le tableau de variables correspondant à key.
3. Hashmap pratique pour fusionner les données dans le tableau correspondant à chaque clé.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal