Time of Update: 2017-01-19
本文為大家分析了 PHP中strpos、strstr和stripos、stristr函數,供大家參考,具體內容如下strposmixed strpos ( string $haystack, mixed $needle [, int $offset = 0 ]
Time of Update: 2017-01-19
本文執行個體為大家分享了linux下php上傳檔案注意事項,供大家參考,具體內容如下1、修改上傳目錄許可權linux 修改某目錄下所有所有子目錄許可權chmod -R 777 html修改某目錄為任何使用者都用寫讀執行許可權chmod a+rwx html2、設定上傳檔案的根目錄//取得項目根目錄$siteRoot = dirname(__file__);3、修改設定檔的上傳大小 php.inipost_max_size = 200Mupload_max_filesize =
Time of Update: 2017-01-19
php設計模式之單例模式的例子,供大家參考,具體內容如下<?php /** * php設計模式 單例模式 */ class Fruit{ private static $instanceMap = array(); //protected getter for singleton instances protected static function getSingleton($className){ //保證單例模式
Time of Update: 2017-01-19
在項目開發的時候由於涉及到批量記錄數組的傳入,由於欄位多,所以不可能能用普通的方式&a=322&=gsd&v=rwe 這樣去傳送,所以想到了前端傳JSON格式過去content=[{'a':2321,'b':'gsd','c':'dww'},{'a':'4sd','b':'gsd2','c':'dww3'},.....] , 這樣的話多條記錄後台解析也很方便,但我這麼傳的時候後台收到的是 [{\'a\':2321,\'b\':\'gsd\',\'c\':\'dww\'}...]
Time of Update: 2017-01-19
核心代碼:Class Utils { /** * format MySQL DateTime (YYYY-MM-DD hh:mm:ss) 把mysql中尋找出來的資料格式轉換成時間秒數 * @param string $datetime */public function fmDatetime($datetime) { $year = substr($datetime,0,4); $month = substr($datetime,5,2); $day =
Time of Update: 2017-01-19
比如圖片檔案的尾碼,jpg或gif等有兩個方法一,假如$img為圖片檔案名稱$img=12345.gif;$img_ext = substr($img, strrpos($img, '.'));二,用到php數組,先把檔案名稱字串讀取到數組中$ext2=explode(".",$img); $count=count($ext2); $count2=$count-1; $file_name = $urlstr
Time of Update: 2017-01-19
小檔案幾兆以內大小,都可以通過file()函數,將檔案按行讀入數組,在用array_pop取得最後一行,就可以了。但是對於很大的文字檔來說,機器記憶體不夠大,或者php本身memory_limit有限制,這個辦法就不適用了,即使強行不限制,效率也是非常低的。沒有辦法了嗎?當然有,不過沒有現成的函數了,需要自己動手了。這裡需要用到檔案指標,學過C的應該知道指標式個嘛玩意,通俗的講吧,PHP中通過fopen開啟一個檔案,這時候還沒有讀取檔案,這時候指向的是檔案開頭,指標位置也就是0,當你通過fget
Time of Update: 2017-01-19
1.freadstring fread ( int $handle , int $length )fread() 從 handle 指向的檔案中讀取最多 length 個位元組。該函數在讀取完最多 length 個位元組數,或到達 EOF 的時候,或(對於網路流)當一個包可用時,或(在開啟使用者空間流之後)已讀取了 8192 個位元組時就會停止讀取檔案,視乎先碰到哪種情況。fread() 返回所讀取的字串,如果出錯返回 FALSE。<?php $filename = "/usr/
Time of Update: 2017-01-19
本文執行個體講述了php實現子字串位置相互對調互換的方法。分享給大家供大家參考,具體如下:<?php/*子字串位置互換 */$str1="Tom";$str2="Jack";$str="This is an example,you see Tom tell Jack something";function str_change($str,$str1,$str2){ $len1=strlen($str1); $len2=strlen($str2); $pos1=strpos($
Time of Update: 2017-01-19
在開發中,我們經常會遇到數組與XML之間的互相轉換,尤其在處理介面開發的時候經常用到,比如對方用戶端POST一個XML格式的資料到伺服器上,伺服器上的程式要負責接收解析,還有需要將資料表資料以XML格式提供給第三方等等應用。本文我們將簡單介紹如何使用PHP處理數組和XML之間的互相轉換。源碼下載:PHP數組與XML之間的轉換PHP將數群組轉換成XML PHP可以將數群組轉換成xml格式,簡單的辦法是遍曆數組,然後將數組的key/value轉換成xml節點,再直接echo輸出了,如:fu
Time of Update: 2017-01-19
在使用者註冊中最常見的安全驗證之一就是郵箱驗證。根據行業的一般做法,進行郵箱驗證是避免潛在的安全隱患一種非常重要的做法,現在就讓我們來討論一下這些最佳實務,來看看如何在PHP中建立一個郵箱驗證。讓我們先從一個註冊表單開始:<form method="post" action="http://mydomain.com/registration/"> <fieldset class="form-group"> <label for="fname">First
Time of Update: 2017-01-19
本文講述了PHP模組化安裝的方法。分享給大家供大家參考,具體如下:PHP(Hypertext Preprocessor)這門雖然簡單但功能卻是非常強大的指令碼語言,下面就 基於WindowsXP+sp2的操作平台下的 Apache2.0.53+php5.2.1安裝及基本配置過程記錄下來以供參考:一、首先從各官方網站下載以下程式:1. apache_2.0.53-win32-x86-no_ssl.exe2. php-5.2.1-Win32.zip (二進位壓縮包)二、安裝及配置過程:1.
Time of Update: 2017-01-19
本文講述了PHP源碼目錄結構與功能說明。分享給大家供大家參考,具體如下:PHP之所以能在web開發語言中排名靠前,不僅僅是因為文法簡單,上手容易。我個人認為更多是因為其語言本身的:模組的易擴充性,可維護性以及記憶體安全管理等特點。寫過PHP的程式員不一定都知道:PHP是如何執行的?其組織圖目錄的作用?如果對其有所瞭解,對PHP的認識會更深入,寫出的代碼也會更高效,更健壯......1. build 和編譯有關的目錄。2. ext 擴充庫代碼,例如 MySQL、zlib、iconv
Time of Update: 2017-01-19
本文講述了PHP原理之執行循環。分享給大家供大家參考,具體如下:PHP的執行循環,從最初我們編寫的PHP指令碼->到最後指令碼被執行->得到執行結果,這個過程,其實可以分為如下幾個階段:首先,Zend Engine(ZE),調用詞法分析 器(Lex產生的,源檔案在 Zend/zend_language_sanner.l), 將我們要執行的PHP源檔案,去掉空格 ,注釋,分割成一個一個的token。然後,ZE會將得到的token forward給文法分析 器(yacc產生, 源檔案在
Time of Update: 2017-01-19
本文執行個體講述了PHP中OpCode的原理。分享給大家供大家參考,具體如下:OpCode是一種PHP指令碼編譯後的中繼語言,就像Java的ByteCode,或者.NET的MSL。 此文主要基於《 Understanding OPcode》和 網路,根據個人的理解和修改,特記錄下來 :PHP代碼:<?php echo "Hello World"; $a = 1 + 1; echo $a;?>PHP執行這段代碼會經過如下4個步驟:1. Scanning
Time of Update: 2017-01-19
本文執行個體講述了Ubuntu server 11.04安裝memcache及php使用memcache來儲存session的方法。分享給大家供大家參考,具體如下:1、首先安裝memcache服務端:sudo apt-get install memcached安裝完成後系統 自動啟動了 memcached服務佔用11211連接埠如需重新設定11211連接埠的服務 需要關閉已開啟的memcached服務手動啟動:memcached -d -m 128 -p 11211 -u
Time of Update: 2017-01-19
PHP5.4才支援JSON_UNESCAPED_UNICODE這個參數,此參數是讓中文字元在json_encode的時候不用轉義,減少資料轉送量。但在PHP5.3中,就得自己寫個函數來實現,以下就是解決方案:/*** 對變數進行 JSON 編碼* @param mixed value 待編碼的 value ,除了resource 類型之外,可以為任何資料類型,該函數只能接受 UTF-8 編碼的資料* @return string 返回 value 值的 JSON 形式*/function
Time of Update: 2017-01-19
本文執行個體講述了php求圓周率的簡單實現方法。分享給大家供大家參考,具體如下:前面一篇《C語言求圓周率》給出了一個圓周率的簡單計算方法,這裡借鑒前面的代碼給出php求圓周率的運算方法。具體代碼如下:<?php$t=1;$pi=0;$n=1.0;$s=1;while(abs($t)>1e-6){ $pi=$pi+$t; $n=$n+2; $s=-$s; $t=$s/$n;}$pi=$pi*4;printf("pi=%10.6f",$pi);?>運算結果為:pi=
Time of Update: 2017-01-19
本文執行個體講述了php實現的一段簡單機率相關代碼。分享給大家供大家參考,具體如下:<?phpfor($i=1;$i<100000;$i++){$x=mt_rand(0,100);if($x<20){$a=$a+1;}else{if($x<50){$b=$b+1;}else{$c=$c+1;}}}echo $a . '<br />';echo $b . '<br />';echo $c . '<br />';?>
Time of Update: 2017-01-19
本文執行個體為大家分享了php編寫一個簡單的路由類,供大家參考,具體內容如下<?phpnamespace cmhc\Hcrail; class Hcrail{ /** * callback function * @var callable */ protected static $callback; /** * match string or match regexp * @var string */ protected static