初心者向けの解決策: Zend フレームワークで新しいクラスを作成する方法
最近、私は友人の会社で PHP Web サイトのバックエンドを変更するのを手伝っていました。私は PHP をまだ半分しか習得していませんが、これまで一度もやったことがありません。
ざっと見てみると、Webサイトの構造はおおよそ次のとおりです。
--------------------------------------------------
/アプリケーション/
./admin/controllers/
./admin/views/
/ライブラリ/
./アプリ/
./App/Db.php
./App/Model.php
./App/Db/
./アプリ/モデル/
./ゼンド/
/wwwroot/
...
--------------------------------------------------
/library/App/Model/ ディレクトリには既存の CLASS オブジェクトの PHP ファイルが保存されているため、同じ原理を使用して新しいファイル CreditYd.php をインストールし、新しいクラスを作成しました。
class App_Model_CreditYd extends App_Model_Abstract
{
関数を省略
}
ただし、コントローラーで App_Model::factory('CreditYd'); を呼び出すときにエラーが発生しました。関数関数は次のとおりです:
クラス App_Model
{
静的パブリック関数ファクトリー($model)
{
$className = 'App_Model_' .$model;
$classPath = _LIB_DIR_ . '/App/Model/' .
if (!file_exists($classPath)) {
throw new Exception('Class Not Fonud');
} else {
$model = new $className;
//error_log("[新しいクラス名]rn", 3, _LIB_DIR_ . '/App/error.log');
if ($model instanceof App_Model_Abstract) {
$model を返す;
} else {
throw new Exception('Error');
}
}
}
}
------------------
エラー行は
$model = new $className; にあります。オブジェクトが見つかりませんか? ?
Zend を使ったことがないので、オブジェクトの作り方がわかりません。C 言語のようにインクルードして作成する必要がありますか?
専門家に答えを聞いてください! ! ! !