Implémentation de la génération de tableaux en php pour générer des instructions SQL à exécuter

墨辰丷
Libérer: 2023-03-30 22:28:02
original
2953 Les gens l'ont consulté

Cet article présente principalement les instructions SQL à exécuter pour réaliser la génération de tableaux en php. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Rencontrerez-vous une telle situation ? Chaque fois que les données sont obtenues, il y aura une certaine différence entre les données et la version historique. Cependant, en utilisant la fonction addAll() de ThinkPHP, les données existantes seront supprimées et réécrites. Ce n’est évidemment pas ce que nous souhaitons. Mais écrire SQL par moi-même avec des dizaines de champs à chaque fois est également ennuyeux. Comment réaliser la génération automatique de SQL de manière élégante et simple ? Voici donc la méthode ci-dessous.

/**
   * [array_to_sql 根据数组key和value拼接成需要的sql]
   * @param [type] $array  [key, value结构数组]
   * @param string $type  [sql类型insert,update]
   * @param array $exclude [排除的字段]
   * @return [string]     [返回拼接好的sql]
   */
  function array_to_sql($array, $type='insert', $exclude = array()){
    
    $sql = '';
    if(count($array) > 0){
      foreach ($exclude as $exkey) {
        unset($array[$exkey]);//剔除不要的key
      }

      if('insert' == $type){
        $keys = array_keys($array);
        $values = array_values($array);
        $col = implode("`, `", $keys);
        $val = implode("', '", $values);
        $sql = "(`$col`) values('$val')";
      }else if('update' == $type){
        $tempsql = '';
        $temparr = array();
        foreach ($array as $key => $value) {
          $tempsql = "'$key' = '$value'";
          $temparr[] = $tempsql;
        }

        $sql = implode(",", $temparr);
      }
    }
    return $sql;
  }
Copier après la connexion

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Sélection de requêtes et de zones de liste implémentées par PHP+Mysql+jQuery

PHP réussi Empêcher le site Web d'être attaqué en interdisant les accès IP fréquents

PHP empêche le site Web d'être attaqué en interdisant les accès IP fréquents

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal