ホームページ  >  記事  >  バックエンド開発  >  なぜコントローラーはそんなに従順なのでしょうか?

なぜコントローラーはそんなに従順なのでしょうか?

WBOY
WBOYオリジナル
2016-06-23 13:37:581063ブラウズ

phpcms
header('location:index.php?m=admin'); では、m を使用して入口がどのモジュールに入るかを制御します。たとえば、m=admin は admin モジュールに入り、m=abc は abc モジュールに入ることができます。コマンドを実行します。それで、これはどのように機能しますか?


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

当然、対応するジャンプが行われました。一般的なフレームワークやcmsシステムに共通のルーティング機能です。

当然、対応するジャンプが行われました。一般的なフレームワークやcmsシステムに共通のルーティング機能です。


一般原則については話さないでください。一般原則は理解しています。私が知りたいのは詳細です
private function load_controller($filename = "', $m = '') {
if (emptyempty($filename)) $ファイル名 = ROUTE_C;
if (emptyempty($m)) $m = ROUTE_M;
$filepath = PC_PATH.'modules'.DIRECTORY_SEPARATOR.$m.DIRECTORY_SEPARATOR.$filename.'.php'; )) {
$classname = $filename;
include $filepath; if ($mypath = pc_base::my_path($filepath)) {
$classname = 'MY_'.$filename;クラス名)){
新しいものを返す$classname;それでも真実を知りたい場合は、他の人の返信も読んでください




当然、これは一般的なフレームワークや cms システムで一般的なルーティング機能です。
别说大道理,大道理都明白,我要的是细节
private function load_controller($filename = "', $m = '') {
if (emptyempty($filename)) $filename = ROUTE_C;
if (emptyempty($m)) $m = ROUTE_M;
$filepath = PC_PATH.'modules'.DIRECTORY_SEPARATOR.$m.DIRECTORY_SEPARATOR.$filename.'.php';
if (file_exists($filepath)) {
$クラス名= $filename;
include $filepath;
if ($mypath = pc_base::my_path($filepath)) {
$classname = 'MY_'.$filename;
include $mypath;
}
if(class_exists($classname) )){
return new $classname;
}else{
exit('コントローラが存在しません。');
}
} else {
exit('コントローラーが存在しません。');
}
}
这怎么解释呢,如果你还想来大道理,请看别人回帖吧
呵呵,这么明显的代,细节は英文字母?

脾气不小啊啊

$filepath = PC_PATH。 'モジュール'.DIRECTORY_SEPARATOR.$ m.DIRECTORY_SEPARATOR.$filename.'.php';
组织文件路径
include $filepath;  
取入文件
这么明显了....你要是include 都不知道...没办法

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。