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? ?
巴扎黑
巴扎黑 2017-05-16 13:10:51
0
4
461

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 ? ?

巴扎黑
巴扎黑

répondre à tous(4)
PHPzhong
$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 这个数组里就行
仅有的幸福

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

世界只因有你

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

滿天的星座

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

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