Time of Update: 2016-06-20
10條PHP進階開發技巧10條PHP進階技巧,讓你提高php效率。 1.使用一個SQL注射備忘單 一個基本的原則就是,永遠不要相信使用者提交的資料。另一個規則就是,在你發送或者儲存資料時對它進行轉義(escape)。可以總結為:filter input, escape output (FIEO). 輸入過濾,輸出轉義。通常導致SQL注射漏洞的原因是沒有對輸入進行過濾,如下語句:
Time of Update: 2016-06-20
偽靜態主要是為了SEO而存在的一種技術,又名URL重寫。至於為什麼要實現偽靜態這裡就不詳細解釋了。一般實現偽靜態技術都是使用apache服務的mod_rewrite功能,通過在名為.htaccess的檔案裡面書寫一些rewrite規則的正則來實現URL重寫技術,這種技術本篇不做詳解,下面以程式為例主要講一下利用PHP程式實現偽靜態方法。下面就是實現偽靜態php函數 /*功能:PHP偽靜態化頁面的實現*/function mod_rewrite(){global
Time of Update: 2016-06-20
php的curl和socket的區別首先說下啥是socket:php使用berkely的socket庫來建立他的串連,socket是一個資料結果,你可以通過這個socket來開啟伺服器和用戶端的會話。伺服器端一直處於監聽狀態,當一個用戶端串連伺服器,他就開啟伺服器端正在監聽的一個連接埠進行會話。這時伺服器端接收用戶端的串連請求,那麼就進行一次迴圈。現在這個用戶端就能夠發送資訊到伺服器,伺服器也可以發送資訊給用戶端。產生一個socket你一共需要三個變數:1、一個協議2、一個socket類型 3、
Time of Update: 2016-06-20
ignore_user_abort() 可以實現當用戶端關閉後仍然可以執行PHP代碼,可保持PHP進程一直在執行,可實現所謂的計劃任務功能與持續進程,只需要開啟執行指令碼,除非 apache 等伺服器重啟或有指令碼有輸出,該PHP指令碼將一直處於執行的狀態,初看很實用,不過代價是一個PHP執行指令碼的持續進程,開銷很大,但卻可以 實現很多意想不到的功能。定義和用法ignore_user_abort() 函數設定與客戶機斷開是否會終止指令碼的執行。本函數返回 user-abort 設定的之前的值(
Time of Update: 2016-06-20
PHP提取字串中數位方法有時候我們在PHP開發中需要在一串字串中將所有的數字提取出來,研究了一下探索方法還挺多,值得記錄一下。對如何使用PHP將字串中的數字提取出來的功能做了一個小總結,總結三種方法如下:1、使用Regex:function findNum($str=''){$str=trim($str);if(empty($str)){return
Time of Update: 2016-06-20
PHP檔案上傳實現代碼詳解上傳檔案功能由兩個部分組成,HTML頁面和PHP處理部分。HTML頁面主要是讓使用者選擇所要上傳的檔案,php部分讓我們可以把檔案儲存體到伺服器的指定目錄。一.HTML部分upload.html 上傳Demo:
Time of Update: 2016-06-20
PHP 擷取指定日期對應的星座名稱/** * 擷取指定日期對應星座 * * @param integer $month 月份 1-12 * @param integer $day 日期 1-31 * @return boolean|string */ public function getConstellation($month, $day) { $day = intval($day); $month
Time of Update: 2016-06-20
PHP去除反斜線的方法及3種辦法關閉php魔術引號一般空間商提供的伺服器空間預設PHP 指令 magic_quotes_gpc是on的,也就是開啟的。這時候就可以用stripslashes() 函數刪除自動添加的反斜線。用法就是:比如包含字串的變數是$str,那麼就用stripslashes()
Time of Update: 2016-06-20
PHP 匯出Excel一點小經驗 解決亂碼問題.在PHP項目裡要求把資料匯出為Excel,並且資料中包含中文.網上大概瞭解一下可是使用PHPExcel,可是相對我的需求,這個架構太複雜了.於是還是想找找簡單做法.網上發現其實最簡單可以這樣寫,但問題是這種做法中文的編碼不可靠..Php代碼 有些同學會想到header加入字元集Php代碼 header("Content-type:application/vnd.ms-excel;charset=UTF-8"); 問題:
Time of Update: 2016-06-20
php 擷取目錄的方法有很多,這裡記載一下使用php擷取目前的目錄和相對目錄的方法。';echo getcwd(),'';// 擷取當前檔案的上級目錄,如果 A.php include B.php 則無論寫在哪個檔案裡,都是表示 A.php 檔案所在目錄的上級目錄echo realpath('..'),'';// 擷取網站根目錄,所有檔案裡面擷取的都是當前項目所在的目錄echo $_SERVER['DOCUMENT_ROOT'
Time of Update: 2016-06-20
下面將分享一個利用PHP將擷取到的IP地址轉換為真實實際地址的方法。代碼函數摘自大名鼎鼎的康盛的Discuz源碼,可以根據實際需要返回簡短地址和詳細地址兩種形式。function convertip($ip,$integrity='simple'){$return='';$integrity=in_array($integrity,array('simple','full'))?$integrity:'simple';if(preg_match("/^\d{1,3}\.\d{1,3}\.\d{1
Time of Update: 2016-06-20
php和c#一致的DES加密解密演算法類分享DES加解密演算法,在C#與PHP中的通用類。注意:1、類中的秘鑰key跟向量iv,均用的同樣的值2、編碼均採用的utf-8以下為具體代碼,可以直接複製去進行實際測試C#版代碼:using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI;
Time of Update: 2016-06-20
php基於http協議訪問,判斷訪問來源iphone,android,瀏覽器,pc電腦當我們採用php作為服務資料連接埠,為移動端,pc端提供資料介面的時候,可能會要求記錄介面訪問的來源是來之哪裡.例如:產生訂單,可能就需要記錄,以便做一些資料分析,為運營和推廣提供一些資料支援.現在移動終端是太多的了,所以你也不得不做出這麼多的判斷的了。看下這些移動終端的判斷吧:function order_source() { $useragent = strtolower($_SERVER["
Time of Update: 2016-06-20
PHP浮點數時間戳記轉正常int型做七牛雲端儲存的時候,擷取了一個檔案清單,然后里面的檔案上傳時間傳回值居然是double型的,如:1.3800892861427E+16這怎麼辦?開始我用intval 轉了 發現是64位的整形,不好弄,後來詢問了先截取後處理才能正確返回時間戳記:$a = '1.3800892861427E+16';$a = strval($a);$a = substr($a,0,11);$a = bcmul($a,'1000000000');//$a顯示為了 138008928
Time of Update: 2016-06-20
項目需求php做一個抽獎類的應用,使用者點擊抽獎,會返回三種不同的結果(即獎項:一等獎,二等獎,三等獎,謝謝抽獎),很顯然,這個獎值出現的機率要依次降低了。這就涉及到了一個類似權重計算的一個演算法了。通過一個簡單的權重計算辦法將這件事情搞定了,機率還是在預計範圍之內的。下面就將這個權重計算的方法概述下。首先說明的是這個例子在這裡僅適合二維數組且一維為數字索引的數組,資料數組結構如下:$data=array(0=>array('id'=>1,'name'=>'一等獎','weight'=>'5')
Time of Update: 2016-06-20
php添加pcntl擴充(Linux)pcntl擴充可以支援php的多線程操作(僅限linux)原本需要重新編譯PHP的後面configrue提示加上--enable-pcntl由於我的php是採用yum安裝的,所以不能採用上面的方式下面介紹一個php動態添加擴充的方式 phpize1、首先看下 phpize命令 所在的目錄 (ps:我的目錄/usr/bin/phpize)如果沒有找到的話 執行安裝yum install php53_devel
Time of Update: 2016-06-20
常用HTTP Content-type頭資訊及檔案類型對照ai application/postscriptaif audio/x-aiffaifc audio/x-aiffaiff audio/x-aiffasc text/plainau audio/basicavi video/x-msvideobcpio
Time of Update: 2016-06-20
文章將使用php對數字進行四捨五入保留N位小數,以及使用php對數字進行取整的方法做個小總結。(1)php保留三位小數並且四捨五入$num=0.0215489;echo sprintf("%.3f", $num); // 0.022(2)php保留三位小數不四捨五入$num=0.0215489;echo substr(sprintf("%.4f", $num),0,-1); // 0.021(3)php進一法取整數(這個在分頁程式的頁數程式裡面會用到)echo ceil(4.3); //
Time of Update: 2016-06-20
PHP Curl多線程批量開啟網址的類代碼如下:class curl_multi{ //Curl控制代碼 private $curl_handle=null; //網址 private $url_list=array(); //參數 private $curl_setopt=array( 'CURLOPT_RETURNTRANSFER'=>1,//結果返回給變數 'CURLOPT_HEADER'=>0,//要HTTP頭不?
Time of Update: 2016-06-20
為方便使用者定製網站內容而設立的各個RSS頻道。瀏覽者通過訂閱不同的RSS(可同時訂閱多個網站),就能在不登入網站的情況下獲得及時的新聞資訊,還可以避免網頁上無用的廣告和垃圾資訊的幹擾。使用RSS會為瀏覽者節省大量的時間,也會成為體現網站人性化設計的一個亮點,提升了網站的檔次。其實RSS技術並不太難,如果你的網站資訊量較大,完全可以把這一技術運用到自己的網站中來。一、什麼是RSS RSS是網站與網站之間共用內容的一種簡易方式(也稱為“彙總內容”),通常被用於新聞和其他按順序排列的網站,例如Bl