function dbAction() { require_once 'Rong/Db.php'; $db = Rong_Db::factory( "Mysql", array( "host" => "localhost" , "username" => "root" , "password" => "123456", "dbname" => "rong_db" , "charset" => "utf8" , "port" => 3306 )); $db->query( "insert into article( title ,content) values('title mysql','content')" ); //插入数据 $rows = $db->fetchAll( "select * from article "); //返回一个二维数组 }
require_once 'Rong/Db.php'; $db = Rong_Db::factory( "Sqlite", array( "filename" => "/test.db" , "mode" => 0666 , ));
<?php
/**
* file name: /application/models/ArticleModel.php
*/
require_once 'Rong/Db/Model.php';
class ArticleModel extends Rong_Db_Model
{
public $_name = "article";
public function __construct( )
{
parent::__construct();
}
public function insert( $title, $content )
{
$data = array(
"title" => $title ,
"content" => $content
);
return parent::insert( $data ); // insert()返回last_insert_id
}
}
?>
$data = array(
"字段名1" => $值1 ,
"字段名2" => $值2 ,
......
);
return parent::insert( $data ); //返回最后插入的id
public function testModelAction( ) { require_once 'Rong/Db.php'; $db = Rong_Db::factory( "Mysql", array( "host" => "localhost" , "username" => "root" , "password" => "123456", "dbname" => "rong_db" , "charset" => "utf8" )); require_once 'Rong/Db/Model.php'; Rong_Db_Model::setDb( $db ); //print_r( $this->import->model("ArticleModel" ) ); //print_r( $this->import->model( "sub/Sub" ) ); $articleModel = $this->import->model("ArticleModel" ); //echo $lastInsertId = $articleModel->insert( "model title" , "model content" ); //echo $affectedRows= $articleModel->update( array("title"=>"new title") , "id=12" ); echo $affectedRows = $articleModel->delete( "id=12" ); }
Rong_Db_Model::setDb( $db )
确定模型使用的是哪个 $db 对象。
$articleModel = $this->import->model("ArticleModel" );
实例化一个数据库模型,也就是我们刚才建立的 ArticleModel.php
四、基本模型方法
Rong_Db_Model::setModelsDir( $modelDir )
设置模型的路径。$modelDir为放置模型的新路径
Rong_Db_Model::setName( $newName )
设置数据模型的新表名。
Rong_Db_Model::getName( )
取得当前的表名。
Rong_Db_Model::insert( $data )
插入数据。
Rong_Db_Model::update( $data , $where )
$data 是一个"字段名=>值"形式的一维数组,$where 是sql语句中$where 之后的句子。
Rong_Db_Model::delete( $where )
按$where中的条件删除数据。
Rong_Db_Model::fetchRow( $where )
根据where语名取得一行数据。
Rong_Db_Model::escape( $str )
过滤特殊符号,例如单引号。
$Rong_Db_Model->db->numFields()
返回结果集的字段数
$Rong_Db_Model->db->numRows()
返回结果集的行数。
Rong_Db_Model::fetchCount( $where )
取得行数