zoukankan      html  css  js  c++  java
  • 框架开发1

    config.inc.php配置文件

    <?php
    $_CFG=array();
    $_CFG['host']='localhost';
    $_CFG['user']='root';
    $_CFG['password']='111111';
    ?>
    

    conf.class.php读取配置文件的信息,封装类

    <?php
    //单例类
    class conf{
        protected static $ins=null;
        protected $data=array();
    
        final protected function __construct(){
    
            //一次性把配置文件的数据读进来,以后再要配置,就从data中找
            include('/config.inc.php');
            $this->data=$_CFG;
        }
        final protected function __clone(){
    
        }
    
        public static function getIns(){
            if(self::$ins instanceof self){
                return self::$ins;
            }else{
                self::$ins=new self();
                return self::$ins;
            }
        }
    
        //用魔术方法读取data中的信息
        public function __get($key){
            if(array_key_exists($key,$this->data)){
                return $this->data[$key];
            }else{
                return null;
            }
        }
    
        //用魔术方法,在运行期,动态增加或改变配置选项
        public function __set($key,$value){
            $this->data[$key]=$value;
        }
    }
    
    ?>
    

     db.class.php操作数据库抽象类

    <?php
    abstract class db{
        /*连接服务器
         params $h 服务器地址
         params $u 用户名
         params $p 密码
         return boolean  
        */
         public abstract function connect($h,$u,$p);
        
        /*
        发送查询
        params $sql 发送的sql语句
        return mixted boolean/resousrce
        */
        public abstract function query($sql);
    
        /*
        查询多行数据
        params $sql select型语句
        return array/boolean
        */
        public abstract function getAll($sql);
    
        /*
        查询单行数据
        params $sql select型语句
        return array/boolean
        */
        public abstract function getRow($sql);
    
        /*
        查询单个数据
        params $sql select型语句
        return array/boolean
        */
        public abstract function getOne($sql);
    
        /*
        自动执行insert/update语句
        params $sql select型语句
        return array/boolean
        $this->autoExecute('user',array('username'=>'zhangsan','email'=>'zhang@123.com'),'insert');
        将自动形成 insert into user (username,email) values ('zhangsan','zhang@123.com');
        */
        public abstract function autoExecute($table,$data,$act='insert',$where='');
    }
    
    
    
    ?>
    

     inic.php初始化

    <?php
    //初始化当前绝对路径
    // $path=substr(str_replace('\', '/', __FILE__),0,-8);
    $path=str_replace('\','/',dirname(dirname(__FILE__))).'/';
    
    define('ROOT',$path);
    // echo ROOT;
    require(ROOT.'include/db.class.php');
    require(ROOT.'include/conf.class.php');
    
    
    //设置错误级别
    define('DEBUG',true);
    
    if(defined('DEBUG')){
        error_reporting(E_ALL);
    }else{
        error_reporting(0);
    }
    ?>
    
  • 相关阅读:
    8月工作杂记
    好用的MarkDown编辑器
    Windows下遍历某目录下的文件
    Visual Assist 试用期过期怎么办?
    网易有道面试
    Windows操作系统C盘占用空间过多
    如果有一天我当了面试官
    matlab进行三维重建
    HBase , Doris
    《Java程序设计》第6周学习总结
  • 原文地址:https://www.cnblogs.com/lzzhuany/p/4750996.html
Copyright © 2011-2022 走看看