/** * @param string $dbini 在 config/db.ini.php中配置数据库连接 */ function __construct($dbini) { $this->_dbConfig = SDb::getConfig($dbini); $this->_db = SDb::getDbEngine("pdo_mysql"); $this->_db->init($this->_dbConfig); $this->_time = time(); }
/** * 释放所有对象和数据库连接 * return object|false */ public static function destroy() { // 清除数据库连接,防止长连接导致的数据库超时 $db = SDb::getDbEngine("pdo_new_mysql"); $db->disconnect(); // 释放所有数据库对象 self::clear(); }
function __construct($pkid = false) { $this->_dbConfig = SDb::getConfig("default"); $this->_db = SDb::getDbEngine("pdo_mysql"); $this->_db->init($this->_dbConfig); $this->_time = time(); if ($pkid !== false) { $this->setPkid($pkid); } }
function pageEntry($inPath) { /** * 第一步 设置配置文件 * 配置说明文档请参看 db.ini 里的注释 */ SDb::setConfigFile(ROOT_CONFIG . "/db.ini"); /** * 第二步 获取配置 */ //获取main下的主库 print_r(SDb::getConfig("main", "main")); //获取user下的读库 print_r(SDb::getConfig("user", "query")); //获取blog下的主库 print_r(SDb::getConfig("blog", "main")); //获取test的主库,默认为主库 //得到的配置可以直接用于init()方法 $db_config = SDb::getConfig("test"); //获取数据库引擎 $db = new SDb(); //初始化数据库配置 $db->init($db_config); }
/** * set global db config file * @param string $file * @return void */ static function setConfigFile($file) { self::$_config_file = $file; }
<?php /** * 入口文件 * SmPSS(Supermarket Purchase Sale Stock) */ require_once "global.php"; SlightPHP::setDebug(true); SlightPHP::setAppDir(ROOT_APP); SlightPHP::setSplitFlag("-_."); SDb::setConfigFile(ROOT_CONFIG . "/db.ini.php"); if (($r = SlightPHP::run()) === false) { header('HTTP/1.1 404 Not Found'); header('Status: 404 Not Found'); include './app/v/' . base_Constant::TEMP_DIR . '/common/404.html'; } else { echo $r; exit; }
<?php /* drop table if exists test; CREATE TABLE `test` ( `id` int not null primary key auto_increment, `name` varchar(30) default NULL, `password` varchar(30) default NULL, KEY `name` (`name`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; */ $db = SDb::getDbEngine("mysql"); $db = SDb::getDbEngine("pdo_mysql"); if (!$db) { die("DbEngine not exits"); } $db->init(array("host" => "localhost", "user" => "root", "password" => "", "database" => "test")); //插入记录 print_r($db->insert($table = "test", $items = array("name" => "testName", "password" => "testPassword"))); //检索一个 print_r($db->selectOne($table = "test", $condition = array(), $items = array("name"))); //按条件检索一个 print_r($db->selectOne($table = "test", $condition = array("id" => 1), $items = array("*"))); //搜索全部 $db->setLimit(-1); print_r($db->select($table = "test", $condition = array(), $items = array("*"))); //按页检索 $db->setPage(2); $db->setLimit(5); //是否算总数 $db->setCount(true);
static function setConfigFile($file) { self::$_config = new SConfig(); self::$_config->setConfigFile($file); }
<?php /** * sample to test * * http://localhost/samples/www/index.php/zone/default/entry/a/b/c * http://localhost/samples/www/index.php/zone-default-entry-a-b-c.html * */ require_once "global.php"; //SlightPHP::setDebug(true); SlightPHP::setAppDir(ROOT_APP); SlightPHP::setDefaultZone("index"); SlightPHP::setDefaultPage("main"); SlightPHP::setDefaultEntry("entry"); SlightPHP::setSplitFlag("-_."); //{{{ SDb::setConfigFile(ROOT_CONFIG . "/db.conf"); SRoute::setConfigFile(ROOT_CONFIG . "/route.conf"); SRedis::setConfigFile(ROOT_CONFIG . "/redis.conf"); //}}} if (($r = SlightPHP::run()) === false) { echo "404 error"; } elseif (is_object($r)) { var_dump($r); } else { echo $r; }