ネイティブ サイト (メイン Web アプリ) と非ネイティブ (iPhone、BB、WAP などのアプリ) に REST API ベースのアーキテクチャを使用するアーキテクチャ (MVC = PHP->Yii) を使用する予定です。
View-Controller (HTML+User Requests) (メイン サイト用) と Controller-Model (Request/Response+DB) (API 用) を使用することをお勧めします。非ネイティブ アプリには同じ API プラットフォームを使用します。または、メイン サイトに完全な MVC を使用し、API 用に別のプラットフォームを構築する必要があります。これは、メイン サイトに追加の HTTP (cURL) オーバーヘッドを加えたくないためです。
更新: @karmakaze それは私と一緒ですが、多くのコードが含まれているため、RestControllers を作成する必要があります。とにかく、2つの異なるコントローラーを持つことになります。
UserController extends CController {
actionRegister() {
...Some calculations
.
.
Instead of making Calls to model We will use call controller i.e.
$userRest = new UserRestController();
/*
* This will return json data or php obj depending on params passed or
* may raise an exception
*/
$userRest->actionCreate($param1, $param2);
// Process data obtained.
}
}
または他の方法はありますか?