原创 鏡像文件和虛擬光驅

虛擬光驅不真實存在,不能讀取真實的光盤。所以虛擬光驅要建立自己可以讀取的光盤,就是虛擬光盤,這個虛擬光盤就是我們平時說的鏡像文件,根據虛擬光驅的軟件不同,格式也有所不同。如: *.ccd *.img *.sub *.cue *.bin *

原创 觀察者模式解析

觀察者: 定義對象間一對多的依賴關係,當一個對象的狀態發生改變時,所有依賴於它的對象都得到通知並被自動更新。  觀察者模式(Observer Pattern)必須包含兩個角色:觀察者和被觀察對象。觀察者和被觀察者之間存在“觀察”的邏輯關聯

原创 同源策略

所謂的同源就是要求這個URL的協議,主機,端口三部分都相同。一般我們說的域或者domain也是這裏的源的概念。 存在一種異常情況,javascript可以通過設置document.domain來修改主機和端口部分的值,如果這樣做,設置後

原创 mysql 存儲引擎簡介和選擇

MySQL數據庫引擎取決於MySQL在安裝的時候是如何被編譯的。要添加一個新的引擎,就必須重新編譯MYSQL。在缺省情況下,MYSQL支持三個引擎:ISAM、MYISAM和HEAP。另外兩種類型INNODB和BERKLEY(BDB),也常

原创 window的環境變量的妙用

1.快速打開深層文件夾      爲了查找文件,往往需要打開“E:\My Documents\我的筆記本\各類會議”之類的深層或隱藏文件夾,通過“我的電腦”等常規方法往往比較麻煩。此時只要爲深層或隱藏文件夾設置一個“環境變量”,就可以通過

原创 Session鎖和session_write_close和session_commit函數

session默認是文件存儲,也可以存在數據庫和內存,存入內存可以使用Memcached和Redis技術 Session默認存在文件中,在這種情況下:使用session_start()函數之後就會對該sessionId文件鎖定, 直到還腳

原创 註冊表模式解析

註冊表模式:實際上是單例模式,註冊表類提供靜態方法(或單例對象的實例化方法)來讓其它對象訪問其中的數據(通常是對象)。整個系統中的每個對象都可以訪問這些數據對象。 abstract class Registry { abstract

原创 在ThinkPHP寫Memcache緩存驅動的實現

ThinkPHP提供了方便的緩存方式,包括數據緩存、靜態緩存和查詢緩存等,支持包括文件方式、APC、Db、Memcache、Shmop、Sqlite、Redis、Eaccelerator和Xcache在內的動態數據緩存類型,以及可定製的靜

原创 策略模式解析

策略設計模式: 定義一系列的算法,把它們一個個封裝起來,並且使它們可相互替換。策略模式可以使算法可獨立於使用它的客戶而變化 抽象策略(Strategy)角色:定義所有支持的算法的公共接口。通常是以一個接口或抽象來實現。Context使用這

原创 訪問者模式解析

表示一個作用於某對象結構中的各元素的操作,可以在不改變各元素的類的前提下定義作用於這些元素的新操作 <?php /** * 訪問者模式 * * 表示一個作用於某對象結構中的各元素的操作,可以在不改變各元素的類的前提下定義作用於這

原创 session和cookies

瀏覽器禁用cookies後,同一個域名下的session讀不出來了, 開啓cookies後,可以讀取出session了。 禁用cookies後怎麼纔可以讀出服務器端的session? 設置php.ini的session.use_trans

原创 命令模式解析

【意圖】 將一個請求封裝爲一個對象,從而使用你可用不同的請求對客戶進行參數化;對請求排隊或記錄請求日誌,以及支持可撤消的操作。 命令模式是對命令的封裝。命令模式把發出命令的責任和執行命令的責任分割開,委派給不同的對象。 請求的一方發出請求