yii框架的入口檔案是 web 資料夾下的 index.php 檔案。
index.php檔案的內容如下:
<?php // comment out the following two lines when deployed to production // 定义 debug 的标记 defined('YII_DEBUG') or define('YII_DEBUG', true); // 定义环境,有 'dev' 和 'prod' 两种 defined('YII_ENV') or define('YII_ENV', 'dev'); // 引入 vendor 中的 autoload.php 文件,会基于 composer 的机制自动加载类 require(__DIR__ . '/../vendor/autoload.php'); // 引入 Yii 框架的文件 Yii.php require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php'); // 引入 web 的 config 文件,并将返回值即配置项放入 $config 变量中 $config = require(__DIR__ . '/../config/web.php'); // new 一个 yii\web\Application 的实例,并执行它的 run 方法 // 用 $config 作为 yii\web\Application 初始化的参数 (new yii\web\Application($config))->run();
Yii2 其實還有另一個入口,是 Yii2 命令列的入口文件,也就是頂級目錄下的 yii 檔案。
(相關文章教學建議:yii框架)
yii 檔案的內容如下:
#!/usr/bin/env php <?php defined('YII_DEBUG') or define('YII_DEBUG', true); // fcgi doesn't have STDIN and STDOUT defined by default // 定义 STDIN 和 STDOUT defined('STDIN') or define('STDIN', fopen('php://stdin', 'r')); defined('STDOUT') or define('STDOUT', fopen('php://stdout', 'w')); require(__DIR__ . '/vendor/autoload.php'); require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php'); // 引入 console 的 config 文件,并将返回值即配置项放入 $config 变量中 $config = require(__DIR__ . '/config/console.php'); // new 一个 yii\console\Application 的实例,并执行它的 run 方法 // 用 $config 作为 yii\console\Application 初始化的参数 $application = new yii\console\Application($config); $exitCode = $application->run(); // 退出 exit($exitCode);
與index.php 檔案最大的差別在於,它使用的是 yii\console\Application 類,而index.php 中所使用的 yii\web\Application。
這就是 Yii2 的兩個入口,如果是 advanced 的專案的話,入口會更多,但基本內容都是這兩種形式之一。
更多程式相關內容,請關注php中文網程式設計教學欄位!
以上是yii框架的入口文件在哪裡的詳細內容。更多資訊請關注PHP中文網其他相關文章!