Time of Update: 2018-12-08
很多時候我們需要對資料進行加密解密,比如有些資料需要儲存到cookie中,但又不能被使用者輕易得到這些資料,這時我們就需要加密這些資料儲存到cookie中,等我們需要使用它們的時候再解密。加密的過程如下:複製代碼 代碼如下:// 加密資料並寫到cookie裡$cookie_data = $this -> encrypt("nowamagic", $data);$cookie = array( 'name' => '$data', 'value' =>
Time of Update: 2018-12-08
縮排與空白字元(Indenting and Whitespace)使用 2 個空格而不使用 tab 鍵進行代碼縮排(notepad++, Eclipse 等編輯器均支援此項配置);行尾不應該有空白字元應使用 \n (Unix分行符號),而不是 \r\n (Windows 分行符號)所有檔案均應以一個空行結尾運算子(Operators)所有二元運算子(二個值之間的運算子),如 +, -, =, !=, ==, > 等等,在運算子兩端均需留有一個空格,如應該使用 $foo = $bar
Time of Update: 2018-12-08
1、DOM 函數a、DOMDocument->load()作用:載入xml檔案用法:DOMDocument->load( string filename )參數:filename,xml檔案;返回:如果成功則返回 TRUE,失敗則返回 FALSE。b、DOMDocument->loadXML()作用:載入xml代碼用法:DOMDocument->loadXML( string source )參數:source xml代碼;返回:如果成功則返回 TRUE,失敗則返回
Time of Update: 2018-12-08
PHP比較子出現的頻率實在是太高了,尤其是 ==if(a == b){// do something}但是,你真的掌握了 == 了嗎?細節很重要!來看下面的代碼,說出你認為正確的答案var_dump(' 123fg456'==123);var_dump('some string' == 0);var_dump(123.0 == '123d456');var_dump(0 == "a");var_dump("1" == "01");var_dump("1" ==
Time of Update: 2018-12-08
複製代碼 代碼如下: function resizeimage($srcfile,$mySize){ $size=getimagesize($srcfile); switch($size[2]){ case 1: $img=imagecreatefromgif($srcfile); break; case 2: $img=imagecreatefromjpeg($srcfile); break; case 3:
Time of Update: 2018-12-08
PHP函數split()的基本文法為:array split ( string $pattern, string $string [, int $limit] )。我們向大家舉了兩個例子來具體講解這個函數的使用方法。對於初學者來說,掌握PHP中常用函數的用法,是其繼續學習的基礎。今天我們就為大家詳細介紹有關PHP函數split()的一些使用方法,希望大家能通過這篇文章介紹的內容增加自己的知識庫。說明array split ( string $pattern, string $string [,
Time of Update: 2018-12-08
複製代碼 代碼如下://開始緩衝圖片 ob_start();//啟用輸出緩衝,暫時將要輸出的內容緩衝起來 imagejpeg($newimage,false,$quality);//輸出 $data = ob_get_contents();//擷取剛才擷取的緩衝 ob_end_clean();//清空緩衝 $mem =get_memcache();//自己修改 $mem-&
Time of Update: 2018-12-08
知識點簡介:1.判斷檔案或目錄是否存在bool複製代碼 代碼如下:file_exists(string filename) 2.取得檔案名稱複製代碼 代碼如下:basename(filepath) 3.開啟檔案複製代碼 代碼如下:fopen(filename,mode) 4.擷取檔案路徑資訊複製代碼 代碼如下:pathinfo(path) 5.寫檔案複製代碼 代碼如下:fwrite(resource,string) 6.取絕對路徑複製代碼 代碼如下:realpath(filename)
Time of Update: 2018-12-08
1.用戶端頁面採用AJAX技術請求伺服器優點:最簡單,也最快,就是在返回給用戶端的HTML代碼中,嵌入AJAX調用,或者,嵌入一個img標籤,src指向要執行的耗時指令碼。缺點:一般來說Ajax都應該在onLoad以後觸發,也就是說,使用者點開頁面後,就關閉,那就不會觸發我們的後台指令碼了。而使用img標籤的話,這種方式不能稱為嚴格意義上的非同步執行。使用者瀏覽器會長時間等待php指令碼的執行完成,也就是使用者瀏覽器的狀態列一直顯示還在load。當然,還可以使用其他的類似原理的方法,比如scri
Time of Update: 2018-12-08
PHP Error與Logging 簡介error與logging 函數允許你對錯誤進行處理和記錄。error 函數允許使用者定義錯誤處理規則,並修改記錄錯誤的方式。logging 函數允許使用者對應用程式進行日誌記錄,並把日誌訊息發送到電子郵件、系統日誌或其他的機器。安裝error與logging 函數是 PHP 核心的組成部分。無需安裝即可使用這些函數。PHP Error 和 Logging 函數PHP:指示支援該函數的最早的 PHP 版本。函數 描述
Time of Update: 2018-12-08
PHP 本身沒有多線程的東西,但可以曲線的辦法來造就出同樣的效果,比如多進程的方式來達到非同步呼叫,只限於命令模式。另外還有一種更簡單的方式可用於 Web 程式中,那就是用 fsockopen()、fputs() 來請求一個 URL, 而無需等待返回,如果你在那個被請求的頁面(URL)中做些事情就相當於非同步了。關鍵代碼如下:複製代碼 代碼如下:<?php $fp = fsockopen('localhost',80,&$errno,&$errstr,5); if(
Time of Update: 2018-12-08
這裡介紹兩個php採集能用到的好工具。一個是Snoopy,一個是simple_html_dom。採集還有很多方式(其實本質就2-3種,其他的都是衍生的),php內建了幾個方法也能直接進行採集。但是,出於把懶惰進行到底的精神。我們還是可以通過這兩個工具,讓採集變得更簡單。網上有不少介紹Snoopy的,下面是別人翻譯的Snoopy的SDK//////////////////////////////////////////////////////////////Snoopy是一個php類,用來類比瀏覽
Time of Update: 2018-12-08
以前對物件導向僅限於死記硬背型,工作這麼久了,回過頭來看又是一翻體悟,供大家看看。1.finalfinal:php5新增一個final關鍵字。如果父類中的方法被聲明為final,則子類無法覆蓋該方法;如果一個類被聲明final,則不能被繼承。複製代碼 代碼如下:class BaseClass{ public function test(){ ehco "test"; } final public function moreTest(){
Time of Update: 2018-12-08
nginx緩衝nginx有兩種緩衝機制:fastcgi_cache和proxy_cache下面我們來說說這兩種緩衝機制的區別吧proxy_cache作用是緩衝後端伺服器的內容,可能是任何內容,包括靜態和動態fastcgi_cache作用是緩衝fastcgi產生的內容,很多情況是php產生的動態內容proxy_cache緩衝減少了nginx與後端通訊的次數,節省了傳輸時間和後端頻寬fastcgi_cache緩衝減少了nginx與php的通訊次數,更減輕了php和資料庫的壓力。proxy_cache
Time of Update: 2018-12-08
apc定義:apc是一個開放自由的php opcode緩衝。它的目標是提供一個自由、開放和健全的架構,用於緩衝和最佳化php中間代碼。apc常用函數: 1.apc_clear_cache() 清楚apc緩衝內容2.apc_define_constants(string key,array constants,[,bool case_sensitive]) 將數組constants以常量加入緩衝3.apc_load_constants(string key)
Time of Update: 2018-12-08
單例模式:簡單的說,一個對象只負責一個特定的任務。單例類: 1.建構函式需要標記為private,單例類不能再其他類中執行個體化,只能被其自身執行個體化 2.擁有一個儲存類的執行個體靜態成員變數 3.擁有一個訪問這個執行個體的公用的靜態方法。[常用getInstance()方法進行執行個體化單例類,通過instanceof操作符可以檢測到此類是否已經被執行個體化]註:需要建立__clone()方法防治對象被複製作用:
Time of Update: 2018-12-08
複製代碼 代碼如下:<PRE class=php name="code"><?php $data = array(); //convert a cvs file to an array $data $handle = fopen("data.csv","r"); while ($curline = fgetcsv($handle, 1000, ",")){ $tmp = array(); $num = count($curline); for($c=0; $c <
Time of Update: 2018-12-08
複製代碼 代碼如下:<?php// http://www.jb51.net/article/23093.htmfunction set_cache($name, $value) { // 設定相對或者絕對目錄,末尾不要加 "/" $cache_dir = "./cache"; // 設定副檔名 $cache_extension = ".php"; $cache_str_begin = "<?php\n//Cache Created at: " .
Time of Update: 2018-12-08
代碼如下所示:複製代碼 代碼如下://被察者抽象類別class Observed implements SplSubject{ protected $_name; protected $_observers; //執行個體化,產生一個觀察者對象 public function __construct(){ $this->_observers = new SplObjectStorage(); } // 添加觀察者對象 public
Time of Update: 2018-12-08
1、設定CookiePHP用SetCookie函數來設定Cookie。必須注意的一點是:Cookie是HTTP協議頭的一部分,用於瀏覽器和伺服器之間傳遞資訊,所以必須在任何屬於HTML檔案本身的內容輸出之前調用Cookie函數。SetCookie函數定義了一個Cookie,並且把它附加在HTTP頭的後面,SetCookie函數的原型如下:int SetCookie(string name, string value, int expire, string path, string domain,