日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

ThinkPHP 学习笔记 ( 一 ) 项目部署:应用部署方式与模块分组部署方式

發布時間:2024/9/20 php 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ThinkPHP 学习笔记 ( 一 ) 项目部署:应用部署方式与模块分组部署方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/*** ThinkPHP version 3.1.3*/

ThinkPHP ( 官方網站:http://www.thinkphp.cn/?) 目前最新版本是 3.2.2,它要求 PHP 的版本高于 5.3.0,由于我的 WAMPServer 集成的 PHP 版本是 5.2.6,所以下載了低一版本的 ThinkPHP ( 3.1.3 ) 來學習。

下載的 ThinkPHP 的框架包解壓后的結構是:

├─ThinkPHP.php 框架入口文件 ├─Common 框架公共文件 ├─Conf 框架配置文件 ├─Extend 框架擴展目錄 ├─Lang 核心語言包目錄 ├─Lib 核心類庫目錄 │ ├─Behavior 核心行為類庫 │ ├─Core 核心基類庫 │ ├─Driver 內置驅動 │ │ ├─Cache 內置緩存驅動 │ │ ├─Db 內置數據庫驅動 │ │ ├─TagLib 內置標簽驅動 │ │ └─Template 內置模板引擎驅動 │ └─Template 內置模板引擎 └─Tpl 系統模板目錄

在 WEB 根目錄下創建項目目錄 app,把框架包放至 app 目錄下,然后在 app 目錄下創建入口文件 index.php。

配置入口文件 index.php

<?php define('THINK_PATH','./ThinkPHP/'); require(THINK_PATH."ThinkPHP.php");

此時通過 url 訪問 index.php 文件,頁面顯示:

此時項目目錄 APP 下內容頁發生了變化,除了入口文件 index.php 和框架包,其他都是自動生成的:

每個文件夾的作用分別是:

├─index.php 項目入口文件 ├─Common 項目公共文件目錄 ├─Conf 項目配置目錄 ├─Lang 項目語言目錄 ├─Lib 項目類庫目錄 │ ├─Action Action類庫目錄 │ ├─Behavior 行為類庫目錄 │ ├─Model 模型類庫目錄 │ └─Widget Widget類庫目錄 ├─Runtime 項目運行時目錄 │ ├─Cache 模板緩存目錄 │ ├─Data 數據緩存目錄 │ ├─Logs 日志文件目錄 │ └─Temp 臨時緩存目錄 └─Tpl 項目模板目錄

這種方式的入口文件 index.php 是存在項目目錄之內。也可以入口文件移動到 app 目錄的外面,修改入口文件 index.php :

<?phpdefine('THINK_PATH','./app/ThinkPHP/'); define('APP_NAME','app'); define('APP_PATH','./app/'); require(THINK_PATH."ThinkPHP.php");

目錄結構:

項目的部署方式

項目的部署方式分為應用部署和模塊分組部署。應用部署是每一個項目對應一個入口文件,例如前臺入口文件對應 index.php,后臺入口文件對應 admin.php

前臺入口文件 index.php:

<?php
define('THINK_PATH','./ThinkPHP/'); define('APP_NAME','home'); define('APP_PATH','./home/'); require(THINK_PATH."ThinkPHP.php");

后臺入口文件 admin.php:

<?phpdefine('THINK_PATH','./ThinkPHP/'); define('APP_NAME','admin'); define('APP_PATH','./admin/'); require(THINK_PATH."ThinkPHP.php");

模塊分組方式是所有應用對應一個入口文件,[ 使用模塊分組可以簡化為一個項目目錄。項目的模板文件還是放到項目的 Tpl 目錄下面,只是將外部調用的資源文件, 包括圖片 JS 和 CSS 統一放到網站的公共目錄Public 下面,分 Images、Js 和 Css 子目錄存放,如果有可能的話,甚至也可以把這些資源文件單獨放一個外部的服務器遠程調用,并進行優化。(?事實上,系統目錄和項目目錄可以放到非WEB訪問目錄下面,網站目錄下面只需要放置 Public 公共目錄和入口文件,從而提高網站的安全性。) 來源:ThinkPHP 官方文檔 ]

( 圖片來源:http://www.php400.cn/275.html?)

模塊分組方式需要配置 APP_NAME 和 APP_PATH 。

在 WEB 根目錄創建項目目錄 App,并且拷貝框架包 ThinkPHP 至同級目錄,同時在同級創建所有項目公共資源目錄?Public、所有項目公共上傳目錄 Uploads 以及入口文件 index.php:

index.php:

<?phpdefine('THINK_PATH','./ThinkPHP/'); //定義項目名稱和路徑 define('APP_NAME','Myapp'); define('APP_PATH','./App/'); define('APP_DEBUG',true); //加載框架入口文件 require(THINK_PATH."ThinkPHP.php");

通過 url 訪問 index.php ,初始化項目環境后,App 目錄下自動生成的目錄:

?然后在App/Conf/config.php 配置文件中,配置分組選項:

<?php return array(//'配置項'=>'配置值''APP_GROUP_LIST'=>'Admin,Home','DEFAULT_GROUP'=>'Home', ); ?>

?如果此時訪問 index.php 入口文件,ThinkPHP 會報錯:

因為在公共配置文件中開啟了模塊分組,但相應的分組目錄并沒有創建,需要手動創建 Admin 和 Home 組的各自配置文件:Conf 目錄下創建 Admin 和 Home 目錄,然后分別在目錄中創建 config.php 配置文件;App/Lib/Action 目錄也需要創建 Admin 和 Home 目錄,然后將默認創建的 IndexAction.class.php 文件移動到 App/Lib/Action/Home 目錄,此時訪問入口文件不會報錯,項目部署成功:

總結:傳統的模式適合耦合度不高的項目,也是 ThinkPHP 官方推薦的方式;

模塊分組方式各模塊之間可以方便調用,公共資源也能夠彼此利用,比較適合較大容量的項目。

參考資料:ThinkPHP 官方教程、ThinkPHP 官方文檔、http://www.php400.cn/category/thinkphp%E6%A1%86%E6%9E%B6、《PHP MVC開發實戰》

總結

以上是生活随笔為你收集整理的ThinkPHP 学习笔记 ( 一 ) 项目部署:应用部署方式与模块分组部署方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。