助けてください、来て私を助けてください。

WBOY
リリース: 2016-06-23 14:26:51
オリジナル
878 人が閲覧しました

MVC クラス継承の自動読み込み

最近、MVC 開発モデルを学習しています。ここで、クラスの自動ロードに関する問題が発生しました。たとえば、コントローラー AdminAction.php を作成し、同じディレクトリに FirstAction.php を継承したいのですが、最初に AdminAction を拡張する必要があります。 __autoload を使用できますか? ThinkPHP では、なぜ新しいアクションを直接作成し、その基本クラスのアクションを導入せずに直接継承できるのでしょうか?助けて教えてください

ディスカッションへの返信(解決策)

<?php // PHP5 Used __autoload function $obj_A = new clsA(); // in "cls" directory! $obj_B = new clsB(); // in "cls/cls" directory! function __autoload($className){ if(strtolowwer($className) == "clsb"){ require_once "cls/cls/$className.php"; }else{ include_once "cls/$className.php"; } } ?> 
ログイン後にコピー

// ./myClass.php<?phpclass myClass {    public function __construct() {        echo "myClass init'ed successfuly!!!";    }}?>// ./index.php<?php// we've writen this code where we needfunction __autoload($classname) {    $filename = "./". $classname .".php";    include_once($filename);}// we've called a class ***$obj = new myClass();?>
ログイン後にコピー

一般的に、このように行うには複数のクラスを使用しているようです

一般的に、それを行うには複数のクラスを使用しているようですこんな感じ
ああああ。まだ少し混乱しています。ゆっくり考えてみましょう。おっと、古い火事ですが、とにかくありがとう

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート