基本的にセッターとゲッターのメソッドを持つ 3 つのモデル (データベース テーブルの表現) があります。アクションメソッドを持つサービスクラスがあります。サービス クラス メソッドの 1 つで、2 つのテーブルを結合するクエリを作成しています。クエリ結果に対して単一のオブジェクトを作成する方法を知りたいです。
例えば:
私は2つのモデルファイルm1.phpとm2.phpを持っています
m1.php
class M1Model {
public $id;
public $name;
public function setM1ID($id) {
$this->id = $id;
}
public function setM1Name($name) {
$this->name = $name;
}
public function getM1ID() {
return $this->id;
}
public function getM1Name() {
$this->name;
}
}
m2.php
class M2Model {
public $id;
public $cat_name;
public $m1_id;
public function setM2ID($id) {
$this->id = $id;
}
public function setM2CatName($cat_name) {
$this->cat_name = $cat_name;
}
public function setM1ID($m1_id) {
$this->m1_id = $m1_id;
}
public function getM2ID() {
return $this->id;
}
public function getM2CatName() {
return $this->cat_name;
}
public function getM1ID() {
return $this->m1_id;
}
}
service.php
include m1.php;
include m2.php;
class DataService {
function __construct() {
$m1 = new M1Model();
$m2 = new M2Model();
}
function getAllData() {
$query = "database query using join";
//Here I want to return object (Not generic object)
return $object;
}
}
getAllData() から、単一のオブジェクトと非汎用オブジェクトを返したいです。どうすればいいですか?