在我的项目中,我想一起使用adodb orm和adodb activerecord。 我希望$ db属性中的adodb ORM和$ ar属性中的activerecord,我在我的课程中使用它们。
这是主要的Model类:
class Model {
public $ar ;
public $db;
function __construct() {
include('Model/adodb/adodb.inc.php');
$this->db = ADONewConnection($driver);
$this->db->Connect($server , $username , $password , $database) ;
include('Model/adodb/adodb-active-record.inc.php');
$ar = NewADOConnection("$driver://$username:$password@$server/$database");
$thid->ar = ADOdb_Active_Record::SetDatabaseAdapter($ar);
}
}
和帖子表类:
<?php
class Posts extends Model
{
function getRows()
{
$re = $this->db->Execute('SELECT * From posts') ;
return $re->GetRows();
}
function getTitle()
{
$this->ar->load('id = 5');
return $this->ar->title;
}
}
在Posts类函数中,getRows正常工作但函数getTitle不起作用。
我如何在我的项目中使用它们?
答案 0 :(得分:0)
我找到答案。 为此我创建了新类,然后从Adodb_activeRecord扩展:
class Model_ActiveRecord extends ADOdb_Active_Record
{
function __construct($table = false, $pkeyarr = false, $db = false)
{
parent::__construct($table, $pkeyarr, $db);
}
}
然后在我的构造函数模型中:
$this->ar = new Model_ActiveRecord('posts');