Yii 框架入口指令碼示例分析

2022-09-26 03:00:10 字數 1683 閱讀 3525

入口指令碼是應用啟動流程中的第一環, 乙個應用(不管是網頁應用還是控制台應用)只有乙個入口指令碼。 終端使用者的請求通過入口指令碼例項化應用並將請求**到應用。

web 應用的入口指令碼必須放在終端使用者能夠訪問的目錄下, 通常命名為index.php, 也可以使用 web 伺服器能定位到的其他名稱。

控制台應用的入口指令碼一般在應用根目錄下命名為yii(字尾為.php), 該檔案需要有執行許可權, 這樣使用者就能通過命令./yii [arguments] [options]來執行控制台應用。

入口指令碼主要完成以下工作:

以下是基礎應用模版入口指令碼的**:

<?php defined('yii_debug') or define('yii_debug', true);

defined('yii_env') or define('yii_env', 'dev');

// 註冊 composer 自動載入器

require __dir__ . '/../vendor/autoload.php';

// 包含 yii 類檔案

require __dir__ . '/../vendor/ywww.cppcns.comiisoft/yii2/yii.php';

// 載入應用配置

$config = require __dir__ . '/../config/web.php';

// 建立、配置、執行乙個應用

(new yii\web\application($config))->run();

以下是乙個控制台應用的入口指令碼:

#!/usr/bin/env php

<?php /**

* yii console bootstrap file.

* * @link

* @copyright copyright (c) 2008 yii software llc

* @license license/

*/ defxdfcevyained('yii_debug') or define('yii_debug', true);

defined('yii_env') or define('yii_env', 'dev');

// 註冊 composer 自動載入器

require __dir__ . '/vendor/autoload.php';

// 包含 yii 類檔案

require __dir__ . '/vendo程式設計客棧r/yiisoft/yii2/yii.php';

// 載入應用配置

$config = require __dir__ . '/config/console.php';

$application = new yii\console\application($config);

$exitcode = $application->run();

exit($exitcode);

入口指令碼是定義全域性常量的最好地方,yii 支援以下三個常量:

當定義乙個常量時,通常使用類似如下**來定義:

defined('yii_debug') or define('yii_debug', true);

上面的**等同於:

if (!defined('yii_debug'))

顯然第一段**更加簡潔易懂。

常量定義應該在入口指令碼的開頭,這樣包含其他 php 檔案時, 常量就能生效。

phpyii框架倒敘 Yii 框架入口指令碼示例分析

目錄 入口指令碼 web 應用 控制台應用 定義常量 入口指令碼 入口指令碼是應用啟動流程中的第一環,乙個應用 不管是網頁應用還是控制台應用 只有乙個入口指令碼。終端使用者的請求通過入口指令碼例項化應用並將請求 到應用。web 應用的入口指令碼必須放在終端使用者能夠訪問的目錄下,通常命名為 inde...

yii 入口指令碼

入口指令碼是處理使用者的初始引導php指令碼。它是唯一乙個終端使用者可直接請求執行的php指令碼。多數情況下,乙個 yii 應用的入口指令碼包含像下面這樣簡單的指令碼 在生產環境中請刪除此行 defined yii debug ordefine yii debug true 包含yii引導檔案 re...

Yii 入口指令碼

入口指令碼是應用啟動流程中的第一環,乙個應用 不管是網頁應用還是控制台應用 只有乙個入口指令碼。終端使用者的請求通過入口指令碼例項化應用並將請求 到應用。web 應用的入口指令碼必須放在終端使用者能夠訪問的目錄下,通常命名為index.php,也可以使用 web 伺服器能定位到的其他名稱。控制台應用...