Time of Update: 2016-06-07
PHP檔案讀取操作相對於檔案寫入操作涉及更多的PHP檔案操作函數,在代碼執行個體中會詳細介紹這些函數。讀取文字檔中儲存資料的方式主要涉及的三個步驟及部分檔案操作函數如下:1、開啟檔案(檔案操作函數:fopen)2、檔案資料讀取(檔案操作函數:fgets、file、readfile、feof等)3、關閉檔案(檔案操作函數:fclose)下面仍然以PHP檔案讀寫作業碼執行個體講解檔案讀取方法的具體應用,在執行個體中,通過調用不同的PHP檔案讀取操作函數讀取文字檔中的資料,你可以加深PHP檔案讀取操作
Time of Update: 2016-06-07
複製代碼 代碼如下:echo "今天:".date("Y-m-d").""; echo "昨天:".date("Y-m-d",strtotime("-1 day")), ""; echo "明天:".date("Y-m-d",strtotime("+1 day")). "";echo "一周后:".date("Y-m-d",strtotime("+1 week")). ""; echo "一周零兩天四小時兩秒後:".date("Y-m-d
Time of Update: 2016-06-07
PHP SPL中提供了SplFileInfo和SplFileObject兩個類來處理檔案操作。SplFileInfo用來擷取檔案詳細資料:複製代碼 代碼如下:$file = new SplFileInfo('foo-bar.txt'); print_r(array( 'getATime' => $file->getATime(), //最後訪問時間 'getBasename' => $file->getBasename(), //擷取無路徑的basename
Time of Update: 2016-06-07
PHP SPL標準庫總共有6個介面,如下:1.Countable2.OuterIterator 3.RecursiveIterator 4.SeekableIterator5.SplObserver 6.SplSubject其中OuterIterator、RecursiveIterator、SeekableIterator都是繼承Iterator類的,下面會對每種介面作用和使用進行詳細說明。Coutable介面:實現Countable介面的對象可用於count()函數計數。複製代碼
Time of Update: 2016-06-07
PHP中所有函數都是UNIX紀元的,即從1970年1月1日開始的。日期是從這個時候開始的秒數。當一個函數調用從這時候計的秒數時,就把它當作(timestamp)時間戳記。本地時間函數1. string date(string format,inieger timestamp)該函數返回一個表示時間的字串,是由string format 控制的。如:也許你會問,怎麽沒有timestamp呢?若timestamp為空白時,或不寫時,表示使用目前時間一刻timestamp.表示年份的控制符:
Time of Update: 2016-06-07
說明:bool file_exists ( string $filename )如果由 filename 指定的檔案或目錄存在則返回 TRUE,否則返回 FALSE。在Windows上,使用/ /電腦名稱/共用/檔案名稱或 電腦名稱共用檔案名稱,以檢查網際網路共用檔案。在 Windows 中要用 //computername/share/filename 或者 \\computername\share\filename
Time of Update: 2016-06-07
is_file() 函數檢查指定的檔案名稱是否是正常的檔案。is_file — Tells whether the filename is a regular file用法:bool is_file ( string $filename ) $file 為必選參數如果檔案存在且為正常的檔案則返回 TRUE。先來看一個執行個體一:上例將輸出:bool(true)bool(false)執行個體二:執行個體三:"." AND $file<>".."){if
Time of Update: 2016-06-07
restfule 介面適用的平台:跨平台所依賴:curl擴充git:https://git.oschina.net/anziguoer/restAPIApiServer.phpauthorization(); $this->method = strtolower($_SERVER['REQUEST_METHOD']); //所有的請求都是pathinfo模式 $pathinfo = $_SERVER['PATH_INFO'];
Time of Update: 2016-06-07
php中有格式化字串並轉換成數組或對象的好方法,即序列化處理。有兩種序列化變數的方法。以下樣本,使用 serialize() 和 unserialize() 函數:// a complex array$myvar = array( 'hello', 42, array(1,'two'), 'apple');// convert to a string$string = serialize($myvar);echo $string;/* printsa:4:{i:0;s:5:"hello";i:1
Time of Update: 2016-06-07
stream_context_create()函數是用來 建立開啟檔案的上下檔案選項 ,用於fopen(),file_get_contents()等過程的逾時設定、Proxy 伺服器、請求方式、頭資訊設定的特殊過程。比如說,上篇php教程中gd庫實現下載網頁所有圖片中,第10行:利用了stream_context_create()設定Proxy 伺服器: 代碼如下://設定Proxy 伺服器$opts =
Time of Update: 2016-06-07
PHP SPL SplObjectStorage是用來儲存一組對象的,特別是當你需要唯一標識對象的時候。PHP SPL SplObjectStorage類實現了Countable,Iterator,Serializable,ArrayAccess四個介面。可實現統計、迭代、序列化、數組式訪問等功能。看下面一個簡單的例子:class A { public $i; public function __construct($i) { $this->i = $i; }} $a1 = new
Time of Update: 2016-06-07
堆(Heap)就是為了實現優先隊列而設計的一種資料結構,它是通過構造二元堆積(二叉樹的一種)實現。根節點最大的堆叫做最大堆或大根堆,根節點最小的堆叫做最小堆或小根堆。二元堆積還常用於排序(堆排序)。如下:最小堆(任意節點的優先順序不小於它的子節點)看看PHP SplHeap的實現:顯然它是一個抽象類別,最大堆(SplMaxHeap)和最小堆(SplMinHeap)就是繼承它實現的。最大堆和最小堆並沒有額外的方法SplHeap的簡單使用如下:class MySimpleHeap extends
Time of Update: 2016-06-07
隊列這種資料結構更簡單,就像我們生活中排隊一樣,它的特性是先進先出(FIFO)。PHP SPL中SplQueue類就是實現隊列操作,和棧一樣,它也可以繼承雙鏈表(SplDoublyLinkedList)輕鬆實現。SplQueue類摘要如下:SplQueue簡單使用如下:複製代碼 代碼如下:$queue = new SplQueue(); /** * 可見隊列和雙鏈表的區別就是IteratorMode改變了而已,棧的IteratorMode只能為: *
Time of Update: 2016-06-07
PHP預定了兩個異常類:Exception和ErrorException複製代碼 代碼如下:Exception { /* 屬性 */ protected string $message ; //異常訊息內容 protected int $code ; //異常代碼號 protected string $file ; //拋出異常的檔案名稱 protected int $line ; //拋出異常在該檔案中的行號 /* 方法 */ public
Time of Update: 2016-06-07
雙鏈表是一種重要的線性儲存結構,對於雙鏈表中的每個節點,不僅僅儲存自己的資訊,還要儲存前驅和後繼節點的地址。PHP SPL中的SplDoublyLinkedList類提供了對雙鏈表的操作。SplDoublyLinkedList類摘要如下:SplDoublyLinkedList implements Iterator , ArrayAccess , Countable { public __construct ( void ) public void add ( mixed
Time of Update: 2016-06-07
簡單寫了一個PHP的影像處理類庫,雖然功能比較少,但是目前也沒用到太進階的,以後用到了再填吧,或者哪位給點建議加上什麼功能,或者有什麼需求可以跟我說,我有時間加上,如果哪位對這個類庫進行了擴充的話,還麻煩拿出來大家分享一下,代碼現在是能用就行,考慮的東西不是很多,有什麼更好的建議請告訴我,謝謝Img.php _Re_Set(); foreach($Options as $K=>$V){
Time of Update: 2016-06-07
棧(Stack)是一種特殊的線性表,因為它只能線上性表的一端進行插入或刪除元素(即進棧和出棧)SplStack就是繼承雙鏈表(SplDoublyLinkedList)實現棧。類摘要如下:簡單使用如下://把棧想象成一個顛倒的數組$stack = new SplStack();/** * 可見棧和雙鏈表的區別就是IteratorMode改變了而已,棧的IteratorMode只能為: * (1)SplDoublyLinkedList::IT_MODE_LIFO |
Time of Update: 2016-06-07
需要開啟php的pdo支援,php5.1以上版本支援實現資料庫連接單例化,有三要素 靜態變數、靜態執行個體化方法、私人建構函式 DPDO.phpclass DPDO{ private $DSN; private $DBUser; private $DBPwd; private $longLink; private $pdo; //私人建構函式 防止被直接執行個體化 private function __construct($dsn, $DBUser, $DBPwd,
Time of Update: 2016-06-07
我測試是支援的CSV,SQL,TXT其實其他格式也可以,只不過我用不到而已速度是差不多是每秒一萬吧";?>$val) { if(is_array($val)) { $data[$key] = array_iconv($val, $input, $output); } else { $data[$key] = mb_convert_encoding($data, $output, $encoded); } } return $data; }}function microtime_
Time of Update: 2016-06-07
最近看書,裡面提到了一些Hash演算法。比較有印象的是Times33,當時理解不是很透測,今天寫了段程式來驗證了一下。先上代碼:複製代碼 代碼如下:/** * CRC32 Hash function * @param $str * @return int */ function hash32($str) { return crc32($str) >> 16 & 0x7FFFFFFF; }/** * Times33 Hash function * @param $str *