第3章 TP5.0 配置javascript
=============================================================php
一、入口文件css
二、應用前端
三、模塊(前臺模塊 後臺模塊)java
四、控制器mysql
五、數據模型sql
六、視圖thinkphp
七、命名空間小程序
# 實例化 當前模塊User控制器數組
controller('User');
# 實例化後臺模塊User控制器
controller('Admin\User');
# 實例化當前控制器test方法
action('test');
# 實例化當前模塊User控制器test方法
action('User\test');
# 實例化Admin模塊User控制器test方法
action('Admin\User\test');
=============================================================
a) ThinkPHP支持多種格式的配置格式,但最終都是解析爲PHP數組的方式。
b) 咱們主要的學習形式就是數組
return [
'name'=>'',
'age'=>'',
];
一、慣例配置
a、慣例配置目錄
C:\AppServ\www\tp5\thinkphp\convention.php
b、注意:
你們通常不要修改慣例配置
二、應用配置
a、應用配置目錄
C:\AppServ\www\tp5\application\config.php
三、擴展配置
a、擴展配置
其實就是對配置文件進行分目錄的管理
b、擴展配置目錄
# C:\AppServ\www\tp5\application\database.php
# C:\AppServ\www\tp5\application\extra\用戶能夠自定義配置文件
c、讀取database擴展配置
# 讀取databse中的擴展項
dump(config('擴展文件名.password'));
dump(config('database.password'));
# 讀取全部的database擴展
dump(config('database'));
d、自定義擴展配置
一、在 擴展目錄(C:\AppServ\www\tp5\application\extra)下 新建user.php
二、打開文件
<?php
return [
"name"=>"小郭",
"love"=>"做家",
"wai"=>"小四"
];
三、讀取自定義擴展配置
dump(config('user'));
dump(config('user.wai')
四、場景配置
a、解決問題
開發過程可能不一樣環境下進行開發
b、如何使用
一、修改應用配置(C:\AppServ\www\tp5\application\config.php)
'app_status' => 'home',
二、在應用目錄下新建(C:\AppServ\www\tp5\application) 新建對應home.php
三、在home.php 中書寫相關配置
五、模塊配置
a、解決問題
每個模塊,都有本身特有的配置
b、如何使用(之前臺模塊爲例)
一、在前臺模塊下(C:\AppServ\www\tp5\application\index)新建 config.php
二、打開配置文件書寫
<?php
return [
"index"=>"我是前臺配置"
];
六、動態配置
一、系統方法
// config(參數1,參數2);
config('name','PHP開發');
二、系統類
\think\Config::set('name','WEB前端');
use \think\Config;
Config::set('name','小程序開發');
一、經過系統類
# 若是配置項存在 直接輸出 不存在返回NULL
一、打印配置信息
echo \think\Config::get('name');
think下面有這麼一個config類,這個類裏面有get方法。
二、打印數組配置信息
echo \think\Config::get('teacher');
echo \think\Config::get('teacher.name');
二、經過系統方法
一、打印配置信息
echo config('name');
二、打印數組配置信息
dump(config('teacher'));
dump(config('teacher.name'));
三、讀取全部配置
dump(config());
三、使用use
一、打印配置信息
use \think\Config;
echo Config::get('kouhao');
二、打印數組配置信息
use \think\Config;
echo Config::get('teacher');
echo Config::get('teacher.name');
Config 設置和獲取配置文件
Controller 實例化控制器
action 調用模塊的操做方法
config 設置和獲取配置
dump 瀏覽器友好的變量輸出
一、優先級
動態配置>模塊配置>場景配置>擴展配置>應用配置>慣例配置
二、加載順序
慣例配置->應用配置->擴展配置->場景配置->模塊配置->動態配置
三、配置文件實現原理
$data=array(
"name"=>"慣例配置",
'a'=>'a'
);
$data1=array(
"name"=>'應用配置',
"b"=>'b'
);
# 後面加載的配置,把前面加載匹配同名覆蓋
dump(array_merge($data,$data1));
一、TP5.0 支持環境變量配置
二、設置環境變量配置
a、打開網站根目錄(C:\AppServ\www\tp5) 新建.env
b、書寫環境配置
name=haoge
age=18
[database]
type=mysql
root=root
pass=123qweaasd
c、注意配置環境變量不能使用中文
三、讀取環境配置
a、命名空間
dump(\think\Env::get('name'));
dump(\think\Env::get('abc','不存在'));
# 讀取數組配置
# 不能讀取整個數組
dump(\think\Env::get('database.type'));
b、use 導入系統類
use \think\Env;
dump(Env::get('name'));
# 讀取數組配置
# 不能讀取整個數組
dump(Env::get('database.type'));
四、如何使用
打開配置文件
use \think\Env;
return [
// 應用調試模式
'app_debug' => Env::get('app_debug',false),
// 應用模式狀態
'app_status' => Env::get('app_status',''),
];
Index.php
1 <?php 2 namespace app\index\controller; 3 4 // 引入Config類 5 6 use \think\Config; 7 8 // 引入Env類 9 10 use \think\Env; 11 class Index 12 { 13 public function index() 14 { 15 return '<style type="text/css">*{ padding: 0; margin: 0; } .think_default_text{ padding: 4px 48px;} a{color:#2E5CD5;cursor: pointer;text-decoration: none} a:hover{text-decoration:underline; } body{ background: #fff; font-family: "Century Gothic","Microsoft yahei"; color: #333;font-size:18px} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.6em; font-size: 42px }</style><div style="padding: 24px 48px;"> <h1>:)</h1><p> ThinkPHP V5<br/><span style="font-size:30px">十年磨一劍 - 爲API開發設計的高性能框架</span></p><span style="font-size:22px;">[ V5.0 版本由 <a href="http://www.qiniu.com" target="qiniu">七牛雲</a> 獨家贊助發佈 ]</span></div><script type="text/javascript" src="http://tajs.qq.com/stats?sId=9347272" charset="UTF-8"></script><script type="text/javascript" src="http://ad.topthink.com/Public/static/client.js"></script><thinkad id="ad_bd568ce7058a1091"></thinkad>'; 16 } 17 18 // 讀取配置文件 19 20 public function getConfig(){ 21 22 // 系統函數讀取配置 23 echo config('name'); 24 25 // 經過系統類讀取配置 26 // 若是配置項存在 直接輸出 不存在返回NULL 27 echo \think\Config::get('name'); 28 dump(\think\Config::get('abc')); 29 30 echo dump(Config::get('kouhao')); 31 32 echo "<hr>"; 33 34 // 經過config方法獲取數組 35 dump(config('teacher')); 36 dump(config('teacher.name')); 37 dump(config('teacher.age')); 38 39 // 經過config類獲取配置 40 dump(Config::get('teacher')); 41 dump(Config::get('teacher.sex')); 42 43 dump(\think\Config::get('teacher')); 44 45 // 讀取應用配置 46 47 dump(config('app_name')); 48 49 } 50 51 // 讀取擴展配置 52 53 public function getkuozhan(){ 54 // 讀取database擴展 55 dump(config('database.password')); 56 dump(config('database')); 57 // 讀取用戶自定義擴展 58 dump(config('user')); 59 dump(config('user.wai')); 60 } 61 62 // 讀取場景配置 63 64 public function getchangjing(){ 65 dump(config('database.database')); 66 dump(config('database.password')); 67 } 68 69 // 讀取模塊配置 70 71 public function getmokuai(){ 72 dump(config('index')); 73 } 74 75 // 動態配置 76 77 public function setConfig(){ 78 79 dump(config('name')); 80 // 系統方法 81 // config(參數1,參數2); 82 config('name','PHP開發'); 83 84 // 系統類 85 86 \think\Config::set('name','WEB前端'); 87 88 Config::set('name','小程序開發'); 89 90 dump(config('name')); 91 } 92 93 // 加載順序 94 95 public function jiazai(){ 96 97 // 動態配置 98 99 // config('name','動態配置'); 100 101 // 輸出配置 102 103 // dump(config('name')); 104 105 $data=array( 106 107 "name"=>"慣例配置", 108 'a'=>'a' 109 ); 110 111 $data1=array( 112 "name"=>'應用配置', 113 "b"=>'b' 114 ); 115 116 dump(array_merge($data,$data1)); 117 } 118 119 // 讀取環境變量 120 121 public function getenv(){ 122 123 // 系統類 124 dump(\think\Env::get('name')); 125 dump(\think\Env::get('abc','不存在')); 126 127 dump(Env::get('name')); 128 129 dump(Env::get('database.type')); 130 } 131 }