最近,由于phpcms官網(wǎng)上的phpcms_v9程序不能下載,很多小伙伴尋求幫助,為此,將?phpcms_v9簡(jiǎn)體中文?UTF8?打包上傳服務(wù)器,供大家下載使用。
最近,由于phpcms官網(wǎng)上的phpcms_v9程序不能下載,很多小伙伴" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁(yè) > 營(yíng)銷資訊 > 網(wǎng)站運(yùn)營(yíng) > phpcms_v9.6.3完整版

phpcms_v9.6.3完整版

時(shí)間:2023-07-27 21:27:01 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-07-27 21:27:01 來(lái)源:網(wǎng)站運(yùn)營(yíng)

phpcms_v9.6.3完整版:


最近,由于phpcms官網(wǎng)上的phpcms_v9程序不能下載,很多小伙伴尋求幫助,為此,將?phpcms_v9簡(jiǎn)體中文?UTF8?打包上傳服務(wù)器,供大家下載使用。
最近,由于phpcms官網(wǎng)上的phpcms_v9程序不能下載,很多小伙伴尋求php中文網(wǎng)的幫助,為此,將phpcms_v9簡(jiǎn)體中文UTF8打包上傳服務(wù)器,供大家下載使用。

PHPCMS v9介紹

PHPCMS V9(簡(jiǎn)稱V9)采用PHP5+MYSQL做為技術(shù)基礎(chǔ)進(jìn)行開(kāi)發(fā)。V9采用OOP(面向?qū)ο螅┓绞竭M(jìn)行基礎(chǔ)運(yùn)行框架搭建。模塊化開(kāi)發(fā)方式做為功能開(kāi)發(fā)形式。框架易于功能擴(kuò)展,代碼維護(hù),優(yōu)秀的二次開(kāi)發(fā)能力,可滿足所有網(wǎng)站的應(yīng)用需求。
5年開(kāi)發(fā)經(jīng)驗(yàn)的優(yōu)秀團(tuán)隊(duì),在掌握了豐富的WEB開(kāi)發(fā)經(jīng)驗(yàn)和CMS產(chǎn)品開(kāi)發(fā)經(jīng)驗(yàn)的同時(shí),勇于創(chuàng)新追求完美的設(shè)計(jì)理念,為全球多達(dá)10萬(wàn)網(wǎng)站提供助力,并被更多的政府機(jī)構(gòu)、教育機(jī)構(gòu)、事業(yè)單位、商業(yè)企業(yè)、個(gè)人站長(zhǎng)所認(rèn)可。
V9在保留2008版的特點(diǎn)的同時(shí),對(duì)新版本作出重大的創(chuàng)新,為此我們做出了巨大的努力,希望能為更多的站長(zhǎng)提供優(yōu)質(zhì)的建站系統(tǒng)!
目前已提供文章、圖片、下載等內(nèi)容模型,在此基礎(chǔ)上可非常方便的擴(kuò)展出信息、房產(chǎn)、交友、點(diǎn)評(píng)等功能。已有的模塊有:會(huì)員、在線充值、全站搜索、評(píng)論、專題、新聞心情、短消息、投票、友情鏈接、公告、附件管理、數(shù)據(jù)源模塊、廣告、采集、表單向?qū)?、手機(jī)門(mén)戶等模塊。

文件:n459.com/file/25127180-477437797

以下內(nèi)容無(wú)關(guān):

-------------------------------------------分割線---------------------------------------------

文件目錄結(jié)構(gòu)
根目錄
| – api 接口文件目錄
| – caches 緩存文件目錄
| – configs 系統(tǒng)配置文件目錄
| – caches_* 系統(tǒng)緩存目錄
| – phpcms phpcms框架主目錄
| – languages 框架語(yǔ)言包目錄
| – libs 框架主類庫(kù)、主函數(shù)庫(kù)目錄
| – model 框架數(shù)據(jù)庫(kù)模型目錄
| – modules 框架模塊目錄
| – templates 框架系統(tǒng)模板目錄
| – phpsso_server phpsso主目錄
| – statics 系統(tǒng)附件包
| – css 系統(tǒng)css包
| – images 系統(tǒng)圖片包
| – js 系統(tǒng)js包
| – uploadfile 網(wǎng)站附件目錄
| – admin.php 后臺(tái)管理入口
| – index.php 程序主入口
| – crossdomain.xml FLASH跨域傳輸文件
| – robots.txt 搜索引擎蜘蛛限制配置文件
| – favicon.ico 系統(tǒng)icon圖標(biāo)

URL訪問(wèn)
PHPCMS是采用MVC設(shè)計(jì)模式開(kāi)發(fā),基于模塊和操作的方式進(jìn)行訪問(wèn),采用單一入口模式進(jìn)行項(xiàng)目部署和訪問(wèn),無(wú)論訪問(wèn)任何一個(gè)模塊或者功能,只有一個(gè)統(tǒng)一的入口。
參數(shù)名稱 描述 位置 備注
m 模型/模塊名稱 phpcms/modules中模塊目錄名稱 必須
c 控制器名稱 phpcms/modules/模塊/.php 文件名稱 必須
a 事件名稱 phpcms/modules/模塊/.php 文件中方法名稱

模塊訪問(wèn)方法[示例]:
http://yourdomain.com/index.php?m=content&c=index&a=show&id=1
其中
m = content 為模型/模塊名稱 位于phpcms/modules/content
c = index 為控制器名稱 位于phpcms/modules/content/index.php
a = show 為方法名稱 位于phpcms/modules/content/index.php 中show()方法
id = 1 為其他參數(shù) 與正常get傳遞參數(shù)形式相同

如果我們?cè)L問(wèn)您的域名 如:
http://www.yourdomain.com/index.php
phpcms默認(rèn)路由會(huì)定位到content模塊的index控制器中的init操作,因?yàn)橄到y(tǒng)在沒(méi)有指定模塊和控制器的時(shí)候,會(huì)執(zhí)行默認(rèn)的模塊和操作。
因此下面的URL的結(jié)果是相同的:系統(tǒng)還支持URL路由的功能,這些都能夠帶來(lái)其他的url訪問(wèn)效果。
http://www.yourdomain.com/index.php?m=content&c=index&a=init

系統(tǒng)類庫(kù)與函數(shù)調(diào)用
1.系統(tǒng)類庫(kù)位于系統(tǒng)的phpcms/libs/classes目錄下面,函數(shù)庫(kù)文件名為*.class.php
2.系統(tǒng)函數(shù)庫(kù)位于系統(tǒng)的phpcms/libs/functions目錄下面,函數(shù)庫(kù)文件名為*.func.php,其中g(shù)lobal.func.php為框架中默認(rèn)加載,global.func.php中函數(shù)可直接使用
系統(tǒng)類庫(kù)調(diào)用
pc_base::load_sys_class(‘類名’,‘?dāng)U展地址’,‘是否初始化’);
示例:
$http = pc_base::load_sys_class(‘http’); //實(shí)例化http類
pc_base::load_sys_class(‘format’, ‘’, 0); //調(diào)用form類,不進(jìn)行實(shí)例化操作
系統(tǒng)函數(shù)庫(kù)調(diào)用
pc_base::load_sys_func(‘函數(shù)庫(kù)名’);
示例:
pc_base::load_sys_func(‘mail’); 調(diào)用mail函數(shù)包

模塊
phpcms v9框架中的模塊,位于phpcms/modules目錄中 每一個(gè)目錄稱之為一個(gè)模塊。即url訪問(wèn)中的m
示例:
http://www.yourname.com/index.php?m=content
那么您訪問(wèn)的就是phpcms/modules/content 這個(gè)模塊。
如果創(chuàng)建一個(gè)模塊,只要在 phpcms/modules 目錄下創(chuàng)建文件夾并放入你的控制器類就可以了

控制器
phpcms v9的控制器就是模塊的類文件,位于phpcms/modules/模塊/目錄下面。類名成就是文件名+.php,例如一個(gè)名為mytest的控制器,那么他的命名為mytest.php即可。
控制器類默認(rèn)繼承系統(tǒng)的函數(shù)庫(kù),可以直接使用??刂破黝惖念惷Q與控制器文件名必須相同
如果您創(chuàng)建了一個(gè)mytest.php在test模塊下,那么我們?cè)跒g覽器里面輸入U(xiǎn)RL:
http://www.yourname.com/index.php?m=test&c=mytest

下面是一個(gè)控制器類的基本格式,在構(gòu)建模塊部分會(huì)具體講解

<?php defined('IN_PHPCMS') or exit('No permission resources.'); class mytest { function __construct() { } public function init() { echo 'hellp phpcms v9,my name is defalut action'; } } ?>

如果你添加的控制器類繼承了其他的類,你要小心你的方法名不要和那個(gè)類中的方法名一樣了,否則你的方法會(huì)覆蓋原有的。

命名規(guī)范
PHPCMS其自身的一定規(guī)范。下面是使用PHPCMS做二次開(kāi)發(fā)中應(yīng)該遵循的命名規(guī)范:
類文件需要以.class.php為后綴(這里是指的phpcms的系統(tǒng)類庫(kù)文件和模塊中的類庫(kù)文件,第三方引入的不做要求),例如http.class.php。
函數(shù)文件需要以.func.php為后綴(第三方引入的不做要求),例如mail.func.php。
類名和文件名一致,例如 phpcmsapp類的文件命名是phpcmsapp.class.php。
數(shù)據(jù)模型需要以“數(shù)據(jù)表名稱_model.class.php”為形式,類名稱與文件名必須相同。

配置文件調(diào)用
配置文件配置在caches/configs/目錄下。
配置文件調(diào)用:使用 load_config方法
$upload_url = pc_base::load_config(‘配置文件’,‘要獲取的配置鍵’,‘默認(rèn)配置。當(dāng)獲取配置項(xiàng)目失敗時(shí)該值發(fā)生作用’,‘是否強(qiáng)制重新加載’);
示例:
調(diào)用系統(tǒng)配置中的附件路徑
$upload_url = pc_base::load_config(‘system’,‘upload_url’);

二次開(kāi)發(fā)技巧
1.如果要對(duì)已存在的控制器進(jìn)行二次開(kāi)發(fā),為了方便升級(jí)不建議直接對(duì)內(nèi)核文件直接修改該,您可以通過(guò)"MY_*.php"的形式進(jìn)行二次開(kāi)發(fā)。
例如您要對(duì)改phpcms/mood/index.php進(jìn)行二次開(kāi)發(fā)。您可以在與index.php同級(jí)的目錄下建立"MY_index.php"
MY_index.php代碼如下

<?php class MY_index extends index{ function __construct() { parent::__construct(); } //……your code } ?>

這樣當(dāng)您通過(guò)url訪問(wèn)index控制器的時(shí)候,系統(tǒng)會(huì)默認(rèn)指向MY_index.php 并且原文件的方法將被繼承,可以直接使用。

數(shù)據(jù)庫(kù)配置
數(shù)據(jù)庫(kù)配置文件位置:caches/configs/database.php
我們打開(kāi)這個(gè)配置文件,加入我們的數(shù)據(jù)庫(kù)配置信息。數(shù)據(jù)庫(kù)配置信息為二維數(shù)組結(jié)構(gòu),默認(rèn)為default,可以根據(jù)default結(jié)構(gòu)配置多個(gè)數(shù)據(jù)庫(kù)鏈接(如:extended_1)

<?php return array ( 'default' => array ( 'hostname' => 'localhost', 'database' => 'phpcms', 'username' => 'admin', 'password' => 'admin', 'tablepre' => 'v9_', 'charset' => 'gbk', 'type' => 'mysql', 'debug' => true, 'pconnect' => 0, 'autoconnect' => 0 ), /* 以下格外添加*/ 'extended_1' => array ( 'hostname' => '10.10.125.2', 'database' => 'phpcms', 'username' => 'admin', 'password' => 'admin', 'tablepre' => 'v9_', 'charset' => 'gbk', 'type' => 'mysql', 'debug' => true, 'pconnect' => 0, 'autoconnect' => 0 ), ); ?>

根據(jù)您的數(shù)據(jù)庫(kù)連接信息修改上面的配置內(nèi)容,修改完成后,保存該數(shù)據(jù)庫(kù)配置文件。

路由配置
路由配置文件位置:caches/configs/route.php
我們打開(kāi)這個(gè)配置文件,加入我們的路由配置信息。路由配置信息為二維數(shù)組結(jié)構(gòu),默認(rèn)為default。
路由配置文件內(nèi)容是這樣的:

<?php return array( 'default'=>array('m'=>'admin', 'c'=>'index', 'a'=>'init'), 'test.youname.com'=>array('m'=>'test', 'c'=>'index', 'a'=>'init'), ); ?>

data為一個(gè)二維數(shù)組,可設(shè)置POST和GET的默認(rèn)參數(shù)。POST和GET分別對(duì)應(yīng)PHP中的P O S T 和 _POST和P?OST和_GET兩個(gè)超全局變量。
如下面的例子,在程序中您可以使用$_POST[‘catid’]來(lái)得到data下面POST中的數(shù)組的值。
data中的所設(shè)置的參數(shù)等級(jí)比較低。如果外部程序有提交相同的名字的變量,將會(huì)覆蓋配置文件中所設(shè)置的值。
如:

<?php return array( 'default'=>array( 'm'=>'phpcms', 'c'=>'index', 'a'=>'init', 'data'=>array( 'POST'=>array( 'catid'=>1 ), 'GET'=>array( 'contentid'=>1 ) ) ) ) ?>

外部程序POST了一個(gè)變量catid=2那么你在程序中使用$_POST取到的值是2,而不是配置文件中所設(shè)置的1。

系統(tǒng)配置
系統(tǒng)配置文件位置:caches/configs/system.php
具體詳見(jiàn)該文件注釋

構(gòu)建模塊
開(kāi)發(fā)流程
為你的phpcms創(chuàng)建一個(gè)模塊的一般開(kāi)發(fā)流程是:

  1. 創(chuàng)建數(shù)據(jù)庫(kù)和數(shù)據(jù)表;(沒(méi)有數(shù)據(jù)庫(kù)操作可略過(guò))
  2. 創(chuàng)建模塊目錄
  3. 創(chuàng)建模塊控制器類;
  4. 創(chuàng)建模塊類與模塊函數(shù);(如果只是簡(jiǎn)單的模塊可以不必創(chuàng)建)
  5. 創(chuàng)建模板文件;
  6. 運(yùn)行和調(diào)試。
創(chuàng)建模塊
phpcms v9框架中的模塊,位于phpcms/modules目錄中 每一個(gè)目錄稱之為一個(gè)模塊
如果要?jiǎng)?chuàng)建一個(gè)模塊,只要在 phpcms/modules 目錄下創(chuàng)建文件夾并放入你的控制器類就可以了。
例如我要開(kāi)發(fā)一個(gè)叫做test的模塊,那么首先在 phpcms/modules 目錄下創(chuàng)建文件夾,并將其命名為test。
test文件夾下通常有三個(gè)文件夾:
classes 為模塊類庫(kù)包
functions 為模塊函數(shù)庫(kù)包
templates 為模塊模板包 這里通常放置含有權(quán)限控制的控制器模板,也就是后臺(tái)模板。

如果您的模板有單獨(dú)的前臺(tái)模板,你需要在phpcms/templates/default下創(chuàng)建一個(gè)您的模塊目錄來(lái)放置前臺(tái)模板
"default"為你的風(fēng)格包名稱,我們默認(rèn)適用default
這里我們?cè)赿efault文件夾下創(chuàng)建名為test的文件夾存放模板

創(chuàng)建模塊控制器
在創(chuàng)建模塊中我們已經(jīng)創(chuàng)建好了一個(gè)名為“test”的模塊,接下來(lái)我們繼續(xù)為這個(gè)模塊添加兩個(gè)控制器類。
phpcms v9的控制器就是模塊的類文件,位于phpcms/modules/模塊/目錄下面。
類名成就是文件名+.php,例如一個(gè)名為mytest的控制器,那么他的命名為mytest.php即可。
控制器類默認(rèn)繼承系統(tǒng)的函數(shù)庫(kù),可以直接使用??刂破黝惖念惷Q與控制器文件名必須相同。

控制器類文件包含兩種形式:
1.mytest.php 控制器,前臺(tái)瀏覽(不含權(quán)限控制)

<?php /* defined('IN_PHPCMS') or exit('No permission resources.'); class mytest { function __construct() { } public function init() { $myvar = 'hello world!'; echo $myvar; } public function mylist() { $myvar = 'hello world!this is a example!'; echo $myvar; } } */ ?>

這個(gè)控制器的url訪問(wèn)方法前面已經(jīng)介紹過(guò)了
http://www.yourname.com/index.php?m=test&c=mytest
http://www.yourname.com/index.php?m=test&c=mytest&a=mylist
沒(méi)有填寫(xiě) “a” 的情況下,默認(rèn)調(diào)用init方法

2.mytest_admin.php 控制器,后臺(tái)管理(含權(quán)限控制)
后臺(tái)控制控制器需要加載admin模塊下的admin類,并繼承該類。
需要注意的是因?yàn)槟闾砑拥目刂破黝惱^承了其他的類,你要小心你控制器的方法名不要和該類中的方法名一樣了,否則會(huì)造成影響,具體請(qǐng)查看admin類中有哪些方法。

<?php defined('IN_PHPCMS') or exit('No permission resources.'); pc_base::load_app_class('admin','admin',0); class mytest_admin extends admin { public function __construct() { } public function init() { $myvar = 'oh,i am phpcmser'; echo $myvar; } } ?>

在控制器中增加模板調(diào)用
phpcms 可以實(shí)現(xiàn)完全的模板與程序分離,所以在我們的控制器程序中要加載模板,才可以更友好的顯示出來(lái)。
1.加載前臺(tái)模板
前臺(tái)模板文件在phpcms/templates/default/模塊名稱 目錄中,本示例也就在phpcms/templates/default/test中
加載模板方法如下:
include template(‘test’, ‘mytest’, ‘default’);
其中 test為模塊名稱 mytest 為模板目錄下模板名稱,default為風(fēng)格名稱,默認(rèn)不填為defalut
在上面例子中如果要給mytest.php中init方法加載一個(gè)mytest的模板,如下
public function init() {
$var = ‘hello world!’;
include template(‘test’, ‘mytest’, ‘default’);
}
這樣我們通過(guò)url訪問(wèn)該方法的時(shí)候也就加載了對(duì)應(yīng)的模板。
2.加載后臺(tái)模板
后臺(tái)模板文件在phpcms/modules/模塊名稱/templates 目錄中,本示例也就在phpcms/modules/test/templates 中
加載模板方法如下:
include $this->admin_tpl(‘mytest_admin_list’);
其中mytest_admin_list為phpcms/modules/test/templates中mytest_admin_list.tpl.php,注意:后臺(tái)模板必須以.tpl.php 作為后綴
在上面例子中如果要給mytest_admin.php中init方法加載一個(gè)mytest_admin_list的模板,如下
public function init() {
$myvar = ‘oh,i am phpcmser’;
include $this->admin_tpl(‘mytest_admin_list’);
}

創(chuàng)建數(shù)據(jù)庫(kù)模型類
數(shù)據(jù)庫(kù)模型位于:phpcms/model/ 目錄下。
數(shù)據(jù)模型文件的命名規(guī)則建議為數(shù)據(jù)表名稱+’_model.class.php’
如果在我們的創(chuàng)建的模塊中我要使用一個(gè)數(shù)據(jù)庫(kù)"test",首先需要建立一個(gè)數(shù)據(jù)庫(kù)模型文件,文件名稱為’test_model.class.php’
內(nèi)容如下:

<?php defined('IN_PHPCMS') or exit('No permission resources.'); pc_base::load_sys_class('model', '', 0); class test_model extends model { public function __construct() { $this->db_config = pc_base::load_config('database'); $this->db_setting = 'default'; $this->table_name = 'test'; parent::__construct(); } } ?>

注意:
1.數(shù)據(jù)庫(kù)模型類名稱必須與文件名稱相同;
2.t h i s ? > d b s e t t i n g = ′ d e f a u l t ′ 為 數(shù) 據(jù) 庫(kù) 配 置 文 件 中 配 置 數(shù) 據(jù) 庫(kù) 鏈 接 池 名 稱 , 默 認(rèn) 為 d e f a u l t , 一 般 情 況 下 不 需 要 修 改 。 3. this->db_setting = 'default'為數(shù)據(jù)庫(kù)配置文件中配置數(shù)據(jù)庫(kù)鏈接池名稱,默認(rèn)為default,一般情況下不需要修改。 3.this?>dbs?etting=′default′為數(shù)據(jù)庫(kù)配置文件中配置數(shù)據(jù)庫(kù)鏈接池名稱,默認(rèn)為default,一般情況下不需要修改。3.this->table_name = 'test’為數(shù)據(jù)表名稱

這樣我們就建立好了一個(gè)數(shù)據(jù)庫(kù)模型類。
在模塊的控制器中使用
$this->db = pc_base::load_model(‘test_model’);
來(lái)加載。
具體如下

<?php /* defined('IN_PHPCMS') or exit('No permission resources.'); class mytest { private $db; function __construct() { $this->db = pc_base::load_model('test_model'); } public function init() { $result = $this->db->select(); var_dump($result); } } */ ?>

其中$this->db中所支持的方法請(qǐng)參照phpcms/libs/classes/model.class.php中方法

關(guān)鍵詞:完整

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉