php mvc开发实例详解(1/3)

WBOY
リリース: 2016-06-13 11:25:26
オリジナル
1481 人が閲覧しました

<blockquote>
<?php教程 <br />include("core/ini.php");<br>initializer::initialize();<br>$router = loader::load("router");<br>dispatcher::dispatch($router);</blockquote>
ログイン後にコピー

这个文件就只有4句,我们现在一句句来分析。
include(”core/ini.php”);

我们来看core/ini.php

<blockquote>
<?php <br />set_include_path(get_include_path() . path_separator . "core/main");<br>//set_include_path — sets the include_path configuration option<br>function __autoload($object){<br>require_once("{$object}.php");<br>}</blockquote>
ログイン後にコピー

这个文件首先设置了include_path,也就是我们如果要找包含的文件,告诉系统在这个目录下查找。其实我们定义__autoload()方法,这个方法是在php5增加的,就是当我们实例化一个函数的时候,如果本文件没有,就会自动去加载文件。官方的解释是:
接下来我们看下面一句
initializer::initialize();
这就话就是调用initializer类的一个静态函数initialize,因为我们在ini.php,设置了include_path,以及定义了__autoload,所以程序会自动在core/main目录查找initializer.php.
initializer.php文件如下:

<blockquote>
<?php <br />class initializer<br>{<br>public static function initialize() {<br>set_include_path(get_include_path().path_separator . "core/main");<br>set_include_path(get_include_path().path_separator . "core/main/cache");<br>set_include_path(get_include_path().path_separator . "core/helpers");<br>set_include_path(get_include_path().path_separator . "core/libraries");<br>set_include_path(get_include_path().path_separator . "app/controllers");<br>set_include_path(get_include_path().path_separator."app/models");<br>set_include_path(get_include_path().path_separator."app/views");<br>//include_once("core/config/config.php");<br>}<br>}<br>?><br>
</blockquote>
ログイン後にコピー

这个函数很简单,就只定义了一个静态函数,initialize函数,这个函数就是设置include_path,这样,以后如果包含文件,或者__autoload,就会去这些目录下查找。

ok,我们继续,看第三句

$router = loader::load(”router”);

1 2 3

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!