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

歡迎訪問 生活随笔!

生活随笔

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

php

php 特有,PHP单一入口的特有作用

發布時間:2023/12/10 php 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 特有,PHP单一入口的特有作用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在說單一入口之前,先說說多入口。Discuz!, PHPCMS 2008, DedeCMS 都是采用多入口的結構。

多入口,即通過訪問不同的 php 文件運行對應的功能。如:

/index.php - 網站首頁

/show.php?id=1 - 內容頁

/list.php?page=2 - 列表頁

/login.php - 用戶登錄頁

……

多入口都是通過包含頭文件統一運行環境,即初始化系統。如:

/include/common.inc.php - 頭文件,PHP 文件 include 它后便完成了初始化工作,例如可以使用系統的基礎函數。

php /index.php

include './include/common.inc.php' // 包含頭文件,基本是每個入口 php 文件的首行代碼。

……

?>

拿 PHPCMS 2008 的頭文件來舉例, PHPCMS 2008 在頭文件中完成了基礎函數的加載,常量的定義,系統配置的載入,POST,GET 數據的過濾,數據庫類的實例化,保持用戶登錄等等等等一系列操作。

反正就是個 php 文件嘛,想做什么直接往里加就是了。

所以,所謂的安全檢查,統一檢查,權限控制等,用頭文件同樣可以實現,所謂“單一入口”只不過是換了一種形式,并無實質性的變化。

以前我就是這樣認為的。

現在,假設用 CMS 為客戶建一個站( CMS 是多入口的):建欄目,配網站,卡拉卡拉一段忙碌后,網站可以上線了,放在這個地址下:

localhost/gz/

沒錯,這次建的是 gz 這個地區的地區站,客戶認為網站做得不錯,希望做多一個 bj 地區的地區站。 bj 站的欄目結構,內容,功能模塊等都與 gz 站有所不同。

好,現在問題來了,上面提到的三個多入口的系統,都設計成一套程序一個環境,即一套程序只對應一個數據庫。對于上面的需求( bj 站),除非修改整套程序的結構(這是不切實際的),否則就只能復制多一份源代碼,指向另一個數據庫。

于是,我便復制多一份源代碼,指向 bj 數據庫( gz 站則指向 gz 數據庫),建欄目,配網站,卡拉卡拉一優忙碌后,網站又可以上線了,放在這個地址下:

localhost/bj/

所以,現在有兩套一樣的程序在運行。

然后,客戶想改一改 gz 站的功能,于是我修改了 gz 的代碼。然后,客戶想改一改 bj 站的功能,于是我修改了 bj 的代碼。然后,客戶想在 bj 站上做與 gz 同樣的修改,于是我得把 gz 的修改復制到 bj 中,然后……

于是,我不得不維護兩份實際上是“一樣”的代碼。

假如網站運營得不錯,客戶又建了若干個地區站,我維護的便是若干份“一樣”的代碼——這根本就是惡夢。

現在到單一入口登場了。

單一入口,就是訪問同一個文件加不同參數運行不同的功能。如:

/index.php - 單一入口,默認顯示首頁

/index.php?action=show&id=1 - 用 action 參數指明顯示內容頁

/index.php?action=list&page=2 - 顯示列表頁

/index.php?action=login - 用戶登錄頁

……

index.php 這個入口做的便是頭文件做的初始化操作(外加一些調度),包括加載網站的配置。

現在我們來假設建站用的 CMS 是單一入口的設計,在完成 gz 站后,面對同樣的需求( bj 站),我只需要在 /bj/ 目錄入多建一個入口文件,加載指向 bj 數據庫的配置,再配配數據卡拉卡拉什么的,就完事了!

于是,我只需要維護一份源代碼。

這便是單一入口特有的作用——構造環境。

使用哪個數據庫就是環境的一種,類似的還有:用內存緩存還是文件緩存,用 mysql 還是 mssql 等。

除非在設計階段特別留意,否則,頭文件的結構都會被寫成“一套程序一個環境”的結構。而采用單一入口結構,無論是否留意,都可以輕易實現“一套程序多個環境”。這才是使用單一入口的真正理由。

總結

以上是生活随笔為你收集整理的php 特有,PHP单一入口的特有作用的全部內容,希望文章能夠幫你解決所遇到的問題。

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