parse_url() 是講URL解析成有固定鍵值的數組的函數。php
$ua=parse_url('http://username:password@hostname/path?arg=value#anchor'); print_r($ua);
結果:mysql
Array( [scheme] => http [host] => hostname [user] => username [pass] => password [path] => /path [query] => arg=value [fragment] => anchor )
Smarty是一個使用PHP寫出來的PHP模板引擎,目的是要使用PHP程序同美工分離,使的程序員改變程序的邏輯內容時不會影響到美工的頁面設計,美工從新修改頁面時不會影響到程序的程序邏輯,這在多人合做的項目中顯的尤其重要。(也易於程序的多樣式開發)程序員
Smarty優勢:sql
1. 速度快:相對其餘模板引擎。數據庫
2. 編譯型:採用smarty編寫的程序在運行時要編譯成一個非模板技術的PHP文件。數組
3 .緩存技術:它能夠將用戶最終看到的HTML文件緩存成一個靜態的HTML頁。瀏覽器
4. 插件技術:smarty能夠自定義插件。緩存
不適合使用smarty的地方:cookie
1. 須要實時更新的內容。例如像股票顯示,它須要常常對數據進行更新 。session
2. 小項目。小項目由於項目簡單而美工與程序員兼於一人的項目。
一、Smarty緩存的配置
$smarty->cache_dir = 「/caches/」; //緩存目錄
$smarty->caching = true; //開啓緩存,爲flase的時侯緩存無效
$smarty->cache_lifetime = 60; //緩存時間
二、Smarty緩存的使用和清除
$smarty->display(‘cache.tpl’, cache_id); //建立帶ID的緩存
$smarty->clear_all_cache(); //清除全部緩存
$smarty->clear_cache(‘index.htm’); //清除index.tpl的緩存
$smarty->clear_cache(‘index.htm’,cache_id); //清除指定id的緩存
在很是多時候,咱們須要跟蹤瀏覽者在整個網站的活動,對他們身份進行自動或半自動的識別(也就是平時常說的網站登錄之類的功能),這時候,咱們常採用Cookie與 Session來跟蹤和判斷。
區別:
Session信息是存放在server端,但session id是存放在client cookie的,固然php的session存放方法是多樣化的,這樣就算禁用cookie同樣能夠跟蹤Cookie是徹底保持在客戶端的如:IE firefox 當客戶端禁止cookie時將不能再使用
使用Cookie的限制:
一、必須在HTML文件的內容輸出以前設置;
二、不一樣的瀏覽器對Cookie的處理不一致,且有時會出現錯誤的結果。
三、限制是在客戶端的。一個瀏覽器能建立的Cookie數量最多爲30個,而且每一個不能超過4KB,每一個WEB站點能設置的Cookie總數不能超過20個。
一、儘可能完整的需求方案,具體到每一個功能點上
二、建模結構UML,經過UML工具創建專業的模或本身畫一個簡單的關係圖。
三、創建數據庫
1)、創建的表名、字段名要與他的功能有關係英文很差的拼音一樣能夠
2)、根據結構創建數據庫表,原則是不定項內容必定要分表。
3)、字段類型要考慮內容是否夠用就好,選擇適合的類型 INT Varchar Date
四、設計HTML文件和腳本的實現
根據模和數據庫來設計頁面是個很科學的方法,固然有的時候有人喜歡根據模型設計頁面,數據庫基於頁面設計,都是能夠的。設計頁面時要考慮到每一個細節,包括提示消息頁面,錯誤頁面。
五、PHP代碼的書寫
1)、先創建底層結構和文件夾(若是是大型的網站一樣設計一個文件UML
2)、基礎功能分類關聯,以便從此代碼引用。
3)、代碼的書寫,注意簡潔性和函數的使用,內部函數能實現的儘可能用內部函數
4)、在部分關鍵位置加以代碼註釋。
六、程序的測試和修正
1)、對於發現的BUG不能就解決BUG而解決,要處於完整程序考慮。避免收之東隅失之桑榆。
2)、對於解決過的BUG已經要詳細記錄,以便往後更新。
md5() sha1()
二者的區別主要有兩個:
1. 在進行數據庫鏈接時,函數會先找同一個host, 用戶和密碼的persistent(持續的)的連接,若是能找到,則使用這個連接而不返回一個新的連接。
2. mysql_pconnect()建立的數據庫鏈接在腳本執行完畢後仍然保留,能夠被後來的代碼繼續使用,mysql_close()函數也不會關閉mysql_pconnect()建立的連接。
答: 傳值只是把某一個變量的值傳給了另外一個變量,而引用則說明二者指向了同一個地方。
答: The error_reporting() function sets the error_reporting directive at runtime. PHP has many levels of errors, using this function sets that level for the duration (runtime) of your script.