recherche

Maison  >  Questions et réponses  >  le corps du texte

php - Comment traiter ce tableau pour garantir que les données insérées sont stockées avec précision dans la base de données? ?

Il existe une structure de tableau comme celle-ci :

tableau (taille=3)
  19 =>
    tableau (taille=4)
      'pro_id' => chaîne '44' (longueur=2)
      'attr_id' => int 19
      'attr_value' =>
        tableau (taille=1)
          0 => chaîne '12 mois' (longueur=8)
      'attr_price' =>
        tableau (taille=1)
          0 => chaîne '200' (longueur=3)
  20 =>
    tableau (taille=4)
      'pro_id' => chaîne '44' (longueur=2)
      'attr_id' => int 20
      'attr_value' =>
        tableau (taille=1)
          0 => chaîne 'Calculé sur la base de 5%' (longueur=14)
      'attr_price' =>
  18 =>
    tableau (taille=4)
      'pro_id' => chaîne '44' (longueur=2)
      'attr_id' => int 18
      'attr_value' =>
        tableau (taille=2)
          0 => string 'Déclaration sans facture 0' (longueur=16)
          1 => string 'Déclaration basée sur le montant de la facture' (longueur=18)
      'attr_price' =>
        tableau (taille=2)
          0 => chaîne '100' (longueur=3)
          1 => chaîne '200' (longueur=3)
          

La structure du tableau de données est la suivante :

< /p>

Le résultat que je souhaite est celui ci-dessus, comment dois-je le gérer ? ? Structure du tableau de données

DROP TABLE SI EXISTE `dhd_product_attr`;
CRÉER TABLE `dhd_product_attr` (
  `pro_attr_id` int(10) non signé NOT NULL AUTO_INCREMENT,
  `pro_id` mediumint(8) non signé NOT NULL PAR DÉFAUT '0',
  `attr_id` smallint(5) non signé NOT NULL PAR DÉFAUT '0',
  texte `attr_value` NON NULL,
  `attr_price` varchar(255) NON NULL COMMENTAIRE 'Cet attribut correspond au prix à ajouter au prix original du produit',
  CLÉ PRIMAIRE (`pro_attr_id`),
  CLÉ `pro_id` (`pro_id`),
  CLÉ `attr_id` (`attr_id`)
) MOTEUR=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

Comment gérer ce tableau ? ?

巴扎黑巴扎黑2768 Il y a quelques jours451

répondre à tous(4)je répondrai

  • PHPz

    PHPz2017-05-16 13:12:51

    $array = ['你的数组'];
    $insert = [];
    
    foreach($array as $val){
        foreach($val['attr_value'] as $key=>$attr_val){
             $insert[]=[
                'pro_id'=>$val['pro_id'],
                'attr_id'=>$val['attr_id'],
                'attr_value'=>$attr_val,
                'attr_price'=>$val['attr_price'][$key],
             ]
        }
    }
    
    //你这第一个个字段没看出来怎么确定 加到$insert 这个数组里就行

    répondre
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 13:12:51

    foreach réorganise le tableau et le change au format correspondant à la base de données

    répondre
    0
  • 世界只因有你

    世界只因有你2017-05-16 13:12:51

    Je ne sais tout simplement pas comment réorganiser ce code

    répondre
    0
  • 滿天的星座

    滿天的星座2017-05-16 13:12:51

    Simple et brut, deux couches de foreach ou utilisez une couche de fonction foreach et list

    répondre
    0
  • Annulerrépondre