zoukankan      html  css  js  c++  java
  • PHP 数据库表单创建方法记录(储存三方接口数据必用)

    最近项目在对接第三方接口数据,这里分享下我用来偷懒的一个PHP方法:

     /**
         * 数据库表单创建方法
         * @return string
         * @throws Exception
         */
        public function createtable($js,$name)
        {
            //根据JSON数据,自动创建表
             $pre="";
             $table=$pre.$name;//表名
             $id="id";//主键ID 
             
             //is_numeric();
             $lstr="";
             $i=0;
            foreach($js as $k =>$v){
                if(is_numeric($v)){
                    if($id==$k){
                        $lstr=$lstr."`".$id."` int(11) UNSIGNED NOT NULL";
                    }else{
                        if(is_bool($js[$k])){
                            $v=$v?1:0;
                            $lstr=$lstr." `$k` tinyint(1) DEFAULT '".$v."'";    
                        }else{
                            if(@strlen($v)<255){
                                $lstr=$lstr." `$k` varchar(255) DEFAULT NULL";
                            }else{
                                $lstr=$lstr." `$k` int(11) DEFAULT 0";
                            } 
                        }
                              
                    }
                }else{
                     $lstr=$lstr." `$k` varchar(255) DEFAULT NULL";
                }
                $lstr=$lstr.",";
                $i=$i+1;
            }
            $lstr=substr($lstr,0,strlen($lstr)-1);
            $str="CREATE TABLE `".$table."` (
              ".$lstr."
            ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; 
            ALTER TABLE `".$table."`
              ADD PRIMARY KEY (`".$id."`);
             ALTER TABLE `".$table."`
              MODIFY `".$id."` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=0;
            COMMIT;";
            return $str;
        }

    使用这个方法后,创建数据库的步骤可以直接替换为语句生成,但是前提是接口有返回值。

    如果本文对你有所帮助,麻烦你点个赞。

  • 相关阅读:
    关于HTTP以及TCP
    .NetCore表单提交文件
    C# Out变量
    .NET Core 网络数据采集 -- 使用AngleSharp做html解析
    C# 根据Url下载文件/获取文件流
    C# 模拟表单提交
    C# 获取Url路径的参数信息
    C# 采集页面数据
    .net core 3.1 设置可跨域
    C# json字符串转化成Dictionary
  • 原文地址:https://www.cnblogs.com/smileZAZ/p/14991640.html
Copyright © 2011-2022 走看看