この記事では、Zend Framework チュートリアル モデルの基本ルールと使用方法を例を示して説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
ここでは Zend のモデルについて説明します。実際、Zend でのモデル処理は非常に簡単です。
これは主にオートロード機能によるものです。他のフレームワークとは異なり、モデルに対して複雑な基本クラスが定義されます。
モデルを定義する場合は、特定の関数を使用する前にモデルの基本クラスを継承する必要があります。
モデルは Zend にカプセル化されていません。
その理由は、おそらくモデルが主に特定のビジネス ロジックに関連しており、過剰なカプセル化は混乱を増すだけであるためです。
Zend は、オートロード関数と名前空間関数を使用して、この問題を巧みに解決します。
zendframeworkプロジェクトmodel_demo1を作成します
エラーを簡単に表示するには、次のように構成ファイル /model_demo1/application/configs/application.ini でエラー情報スイッチをオンにすることができます:
リーリーそれでは、zend のモデルについて簡単に説明しましょう:
1.デフォルトモデル
標準の Web アプリには、application/models などのディレクトリがあります。アプリのモデルを保存するためにモデルが使用されていることを確認するのは難しくありません
このディレクトリの威力は、models ディレクトリに特定のクラスを定義する場合に発揮されることです。もちろん、zend はそれを自動的にロードします。前提条件は次のとおりです。
たとえば、zf コマンドラインを使用して Test という名前のモデルを作成しますリーリー
/www/model_demo1/application/models/Test.php でモデルを作成しますプロジェクトプロファイル「/www/model_demo1/.zfproject.xml」を更新しています
プロジェクト ディレクトリを更新すると、次のファイル /model_demo1/application/models/Test.php が追加されたことがわかります
ファイルの内容は次のとおりです:
リーリー
Model を使用するときに次のルールに従わなければならないことは、難しくありません:1) Application_Model_ で始まり、その後にカスタム モデルのクラス名が続きます。
つまり、Web アプリケーションのモデルのディレクトリ構造は /model_demo1/application/models/Test.php です
対応する名前空間は Application_Model_Test です。
アプリケーションはアプリケーションに対応します
モデルはモデルに対応します
Test はモデルのクラス ファイルの名前です。
制約に従ったクラスの名前は次のとおりです: class Application_Model_Test {
Application_Model_ を理解するのは難しくありません。このようなルールは、zend フレームワークの自動ロードと名前空間の規則に従います。
2).アプリケーション名前空間
実際、Application は構成ファイルで構成したアプリケーションの名前空間でもあります。
設定ファイルのappnamespace = "Application"をappnamespace = "App"に変更した場合。
独自のプログラムではエラーが報告されます。理由は自明です。つまり、zend はそれほどスマートではありません。
原理を詳しく調べたい場合は、おそらくこの関数を完成させる次のクラスです:
リーリー
2. カスタム名前空間
Zend はデフォルトの名前空間です。たとえば、/model_demo1/library/Zend/Test.php にクラス Zend_Testを作成します。 リーリー
プログラムで使用するために何もする必要はありません。例: Zend_Test::echoZendTest();
名前空間をカスタマイズする 2 つの簡単な方法を次に示します:
デフォルトの名前空間
リーリー
カスタム名前空間リーリー
またはリーリー
具体的な実装クラスは次のとおりです: ZendApplication.phpリーリー
2).Bootstrap.php ファイル内例:/model_demo1/application/Bootstrap.php
リーリー
/model_demo1/library/AppTest/Test.phpリーリー
/model_demo1/application/controllers/IndexController.phpリーリー
3).特定のクラスを使用して自動読み込みを完了しますリーリー
/model_demo1/application/models/ModelTest.phpリーリー
/model_demo1/library/AppTest2/Test.phpリーリー
より zend 関連のコンテンツに興味のある読者は、このサイトの特別トピックをチェックしてください: 「Zend FrameWork フレームワーク入門チュートリアル」、「php 優れた開発フレームワークの概要」、「Yii フレームワークの紹介と一般的なテクニックの概要」、「ThinkPHP」入門チュートリアル』『PHPオブジェクト指向プログラミング入門チュートリアル』『php+mysqlデータベース操作入門チュートリアル』『php共通データベース操作スキルまとめ』この記事が PHP プログラミングのすべての人に役立つことを願っています。
興味があるかもしれない記事: