Time of Update: 2017-02-28
mime 已經厭倦了給你的朋友和客戶發送那些單調乏味的文本通知和信件了嗎?曾經考慮過發送附件或在郵中嵌入HTML吧 答案就是MIME。接下來的幾頁解釋了MIME的基礎知識,建立符合MIME的資訊,然後用一個可以工作的PHP 類結束,這個類實現了發送符合MIME郵件。注意對呼叫指令碼,調用者等等的參考資料表示使用了將要開發的類的 指令碼,客戶程式/MUA等等表示郵件閱讀的客戶程式或郵件使用代理程式。 一些MIME基礎
Time of Update: 2017-02-28
安全 Shaun Clowes的文章Exploiting Common Vulnerabilities in PHP Applications的確寫的很棒, 考慮到了很多方面,我這個文章只是狗尾續貂,補充一些其它沒怎麼提到的問題。本文側重於解決問題,而不是 攻擊。 1、古老的欺騙SQL語句 在預設模式下,即使是你忘了把php.ini拷到/usr/local/lib/php.ini下,php還是開啟magic_quotes_gpc=on。
Time of Update: 2017-02-28
項目 一、變數 最好是把所有的變數儲存在一個數組中,這樣在程式的開發中可以帶來很多的方便,特別是當程式很大的時候。變數的命名就當適合自己的習慣,不管是用拼音還是英語,至少應當有一定的意義,以便適合記憶。變數的命名盡量正常化,不要與PHP中的關鍵字相衝突。 二、函數
Time of Update: 2017-02-28
xml|技巧|指令碼 PHP包含支援Expat 解析器的可選XML擴充。PHP中和XML相關的函數可以讓你建立一個解析器來處理有效XML文檔。如果你在使用的Apache版本在1.3.7之後,那你就不需要其他附加的函數庫了。而你所需要做的只是配置PHP--with-xml。 PHP手冊中有好幾個建立基於PHP的XML解析器優秀執行個體。此外,New Riders圖書Web Application Development with PHP
Time of Update: 2017-02-28
技巧|指令碼 PHP功能的另外一個高招是其調用已有Java對象的方法的能力,這種功能可以讓你把PHP整合進已有的基於Java的應用程式。如果你正在你的工作場合推廣PHP ,那你算找到可大吹特吹的靚點了,你知道,Java這玩藝兒無處不在。 為了用到這一功能,你需要在伺服器上安裝Java虛擬機器(JVM)。如果你打算安裝(或已經安裝了)來自Sun、Kaffe、IBM或Blackdown的JDK,那你現在可謂已入正途。
Time of Update: 2017-02-28
技巧|指令碼 如果你希望在每一個指令碼的基礎上實現口令保護功能,那麼你可以聯合使用header()函數和$PHP_AUTH_USER、$PHP_AUTH_PW全域變數來創造一個基本的認證方案。通常的、基於伺服器的認證請求/響應回合很象下面這個樣子: 1.使用者向一台Web伺服器請求一個檔案。如果檔案在一個受到保護的地區以內,伺服器就在響應的檔案頭內加上401(非法使用者)字串作為回應。 2.瀏覽器看見該響應之後就彈出使用者名稱/口令對話方塊。 3.
Time of Update: 2017-02-28
建立|動態|技巧|指令碼 在安裝了某些第三方函數庫之後,結合你的圖形處理技能,你就可以用PHP建立和處理映像了。事實上,你也不需要太高的幾何學知識。我在中學的時候這門功課總是不及格,現在不也照樣會用PHP建立映像!在使用基本的映像建立函數之前,你需要安裝GD庫。如果要用到和JPEG相關的映像建立函數你還需要安裝jpeg-6b。在映像中使用Type 1字型的時候還必須安裝t1lib。
Time of Update: 2017-02-28
同事發現一個在使用set_error_handler的時候, 能100%重現的core, 提煉後的重現代碼如下(環境必須不能訪問internet): <?php function err_handler(){ exit; return true; } set_error_handler('err_handler'); $client = file_get_contents("http://www.laruence.com/
Time of Update: 2017-02-28
/** * 字元截取 支援UTF8/GBK * @param $string * @param $length * @param $dot */ function str_cut($string, $length, $dot = '...') { $strlen = strlen($string); if($strlen <= $length) return $string; $string = str_replace(array('
Time of Update: 2017-02-28
產生幾個隨機數字,隨機提問,總共10輪 windows命令列效果圖 <?php substr(php_sapi_name(), 0, 3) !== 'cli' AND die("Please run in cli mode"); new Php_Cli_Game; class Php_Cli_Game{ private $_digitals = array(); private $_answer = '';
Time of Update: 2017-02-28
分頁是目前在顯示大量結果時所採用的最好的方式。有了下面這些代碼的協助,開發人員可以在多個頁面中顯示大量的資料。在互連網上,分頁是一般用於搜尋結果或是瀏覽全部資訊(比如:一個論壇主題)。幾乎在每一個Web應用程式都需要劃分返回的資料,並按頁顯示。下面的這個列表給出的代碼可以讓你的開發很有協助。學習這些代碼,對於初學者也很有協助。1) 使用Ajax分頁下面這個樣本使用了jQuery + PHP。 Demo link 2) MySql
Time of Update: 2017-02-28
使用PHP完成SVN的操作,包括複製,查看列表,刪除,移動,建立目錄,查看diff,更新,合并,提交,擷取狀態,擷取commit log,擷取目前的版本號操作。在svn 1.6.11版本中測試通過。 <?php/**** This class for execute the external program of svn** @auth Seven Yang <qineer@gmail.com>**/class SvnPeer{/*** List directory
Time of Update: 2017-02-28
這個是因為, 在GBK環境下, “玕”的編碼是”0xab 0x5c, 所以, 又是一個’5c’引發的問題.. 一般來說, 還是建議大家用unicode作為代碼檔案的字元集, 如果要使用GBK, 再主動轉換下. 不過, 就問題說問題, 如果你的指令碼非要GBK編碼, 那怎麼避免這個問題呢? 從PHP5.3開始, PHP引入了Zend Multibyte來支援多字元集編碼. 對於上面的代碼, 我們修改如下: 然後,
Time of Update: 2017-02-28
工廠設計模式: 提供擷取某個對象的新執行個體的一個介面, 同時使調用代碼避免確定實際執行個體化基類的步驟。<?php //基礎標準CD類 class CD { public $tracks = array();
Time of Update: 2017-02-28
1.簡單句法規則(用花括弧界定變數名,適用於PHP所有版本):$a = 'flower';echo "She received some $as";// 無效;字母s會被當成有效變數名組成元素,但是這裡的變數是$aecho "She received some ${a}s"; // 有效echo "She received some {$a}s"; //
Time of Update: 2017-02-28
1.簡介memcache模組是一個高效的守護進程,提供用於記憶體緩衝的過程式程式和物件導向的方便的介面,特別是對於設計動態web程式時減少對資料庫的訪問。memcache也提供用於通訊對話(session_handler)的處理。更多Memcache 模組相關資訊可以到 http://www.danga.com/memcached/ 查閱。 1.1.memcache在php.ini中的配置項列表 memcache在php.ini中的配置項列表
Time of Update: 2017-02-28
Singleton Pattern(中文稱單例模式),可以說是最容易理解的設計模式了,也充分體現了DRY(Don't Repeat
Time of Update: 2017-02-28
由於近日做的程式中涉及到的迴圈比較多且處理的情況較複雜,所以在運行程式時出現執行逾時提示如下:Fatal error: Maximum execution time of 30 seconds exceeded in D:\php\AppServ\www\sum3\test.php on line 3通過在網上搜尋,找到以下解決方案給大家分享一下:這個錯誤是說你的php執行時間越過了設定檔中設定的最大執行時間30秒鐘,這不是你的程式本身存在的問題,而
Time of Update: 2017-02-28
session_start()後 對應的session檔案是被鎖定的,直到當前指令碼結束才會解鎖。在鎖定期間,令一個進程訪問相同session id 要等檔案解鎖後session_start()才會開始。解決辦法是在 session 設定好資料後調用 session_write_close() 將資料寫入檔案並且結束session例如如下代碼PHP code<?phpsession_name("STEST");session_id("TESTID")
Time of Update: 2017-02-28
PHP Error 和 Logging 簡介error 和 logging 函數允許你對錯誤進行處理和記錄。error 函數允許使用者定義錯誤處理規則,並修改記錄錯誤的方式。logging 函數允許使用者對應用程式進行日誌記錄,並把日誌訊息發送到電子郵件、系統日誌或其他的機器。PHP Error 和 Logging 函數PHP:指示支援該函數的最早的 PHP 版本。 函數 描述 PHP