Luck、Time

  • 主页
  • 小说鉴赏
  • 专业笔记
  • 个人简介
所有文章 友链 关于我

Luck、Time

  • 主页
  • 小说鉴赏
  • 专业笔记
  • 个人简介

PHP之Yii2入口脚本的熟悉

2017-08-18

转自:http://www.yiibai.com/yii2/yii_entry_scripts.html
入口脚本是负责启动一个请求处理周期。用户访问只是通过PHP脚本。
下图显示了一个应用程序的结构 -
Yii入口脚本



Web应用程序(以及控制台应用程序)具有一个单一入口脚本。终端用户从入口脚本发起一个请求。然后,入口脚本实例化应用实例并将请求转发给它们。

控制台应用程序入口脚本通常存储在一个项目基本路径并命名为yii.php。
Web应用程序入口脚本必须存储在Web访问的目录下。它通常是index.php。

入口脚本执行以下操作

定义常量
注册 Composer 自动加载
包括 Yii 文件
加载配置
创建和配置一个应用程序实例
处理传入的请求
以下是基本的应用程序入口脚本的模板-

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
//defining global constants
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
//register composer autoloader
require(__DIR__ . '/../vendor/autoload.php');
//include yii files
require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
//load application config
$config = require(__DIR__ . '/../config/web.php');
//create, config, and process reques
(new yii\web\Application($config))->run();
?>

以下是控制台应用程序的入口脚本 -
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env php
<?php
/**
* Yii console bootstrap file.
* @link http://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
//defining global constants
defined('YII_DEBUG') or define('YII_DEBUG', true);
//register composer autoloader
require(__DIR__ . '/vendor/autoload.php');
require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php');
//load config
$config = require(__DIR__ . '/config/console.php');
//apply config the application instance
$application = new yii\console\Application($config);
//process request
$exitCode = $application->run();
exit($exitCode);
?>

定义全局常量最好的地方是入口脚本。有三个Yii常量被定义-
YII_DEBUG − 定义是否在调试模式。如果设置为true,那么将看到更多的日志数据和细节错误的调用堆栈。

YII_ENV − 定义环境模式。默认值是prod。

可用值为 prod, dev 和 test. 它们在配置文件中用来定义:例如,一个不同的数据库连接(本地和远程)或其它值。

YII_ENABLE_ERROR_HANDLER − 指定是否启用默认Yii的错误处理程序。

定义一个全局常数,常用下面的代码-

1
2
3
4
5
6
//defining global constants
defined('YII_DEBUG') or define('YII_DEBUG', true);
which is equivalent to:
if(!defined('YII_DEBUG')) {
define('YII_DEBUG', true);
}

注 - 全局常量应在入口脚本的开头定义,以便包含其他PHP文件时生效。

赏

感谢对我的支持,让我们一起努力吧

谢谢你哦
  • PHP
  • 专业笔记

扫一扫,分享到微信

微信分享二维码
PHP基本资料-了解
甜言密语,说给自己听
Like Issue Page
Error: Comments Not Initialized
Login with GitHub
Styling with Markdown is supported
Powered by Gitment
© 2017 Luck、Time
Hexo Theme Yilia by Litten
  • 所有文章
  • 友链
  • 关于我

tag:

  • Html
  • jquery
  • Mysql
  • PHP
  • Weather
  • GTM
  • GA
  • Hexo
  • ionic
  • 推广
  • 接口集合
  • Wordpress
  • Map
  • 插件集合
  • 日记
  • fighting
  • 自学
  • 安卓
  • 小程序
  • wepy
  • 抓包
  • 祭祀
  • 知识总结
  • 小说鉴赏
  • 太宰治
  • 梭罗
  • 美句

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 友情链接1
  • 友情链接2
  • 友情链接3
  • 友情链接4
  • 友情链接5
  • 友情链接6