自己動手寫CMS

2021-08-31 10:29:44 字數 1693 閱讀 4854

<?php

/* * 簡易的cms外掛程式,可供借鑑或者擴充套件

* * ---- 流程:

* 定義內容;

* 分類與組織內容

* 儲存內容

* 操作控制內容

* * 定義內容:

* 制定目標;

* 確定需要的內容型別

* 目標使用者定位

* 確定目標使用者需要何種技術

* * 分類與組織內容:

* 按內容所屬的邏輯層級關係來劃分

* 按內容的種類來劃分,比如video/text/audio等等

* * 儲存內容:

* 關聯式資料庫

* xml

* 文字檔案

* * 操作控制內容:

* 對操作進行顆粒度分離

* 提供足夠的元資料資訊

* 內容的描述

* 外部展示(web/xml/html),以及定義ui

*/require_once 'db.php';

abstract class ******cms {}

class ******cms_model_contenttype

/*** 查詢內容型別列表

* * @var mixed $cond

* @var int|array $limit

* @var string $fields

* * @return array

*/function getall($cond=null,$limit=null,$fields='*'){}

/*** 更新內容型別記錄,引數中必須帶著主鍵字段

* * @var array $row

* * @return boolean

*/function update(array $row)

return false ; }

/*** 新增乙個內容型別,返回插入的主鍵值

* * @var string $name 型別名

* @var string $description 描述

* @var array $extra 額外字段屬性

* * @return int

* @throws sqlqueryexception

*/function add($name,$description,array $extra=null)

$sql = coredbsqlhelper::getinsertsql($row,$this->_tablename);

if ($this->_dbo->execute($sql,$row,true))

return $this->_dbo->lastinsertid();

return false; }

/*** 型別主鍵是否存在

*

* @var string $primarykey

* @return boolean

*/function existsbyprimarykey($primarykey)

/*** 型別名稱是否存在

* * @var string $name

* @return boolean

*/function existsbyname($name)

}

未完,待續...

自己動手寫bootloader

原始出處 作者資訊和本宣告。否則將追究法律責任。為了寫乙個bootloader讓板子跑起來,首先我們要知道bootloader是個什麼東東才行。簡單的說,bootloader就是乙個引導核心啟動的一段小 也就是說當啟動完核心之後,它的使命就已經結束。bootloader生命週期 初始化硬體 設定啟動...

自己動手寫SpringMVC 四

本文將主要實現dispatcherservlet!之前已經分析過dispatcherservlet主要的任務,分為五個任務,我們從任務一開始開始實現!任務1 把專案中所有的bean掃瞄,進行維護 實現 如下 private void scanpackage string basepackage el...

自己動手寫SpringMVC 五

已經分析過dispatcherservlet主要的任務,分為五個任務,任務1 把專案中所有的bean掃瞄,進行維護,我們已經完成,現在第二個任務 根據全類名建立bean例項,並進行維護 1.如何通過類的資訊,獲得這個類的類型別 class c1 class.forname com.tx.foo 2....