Time of Update: 2017-01-19
1 SimpleXML 簡介 要處理XML 檔案,有兩種傳統的處理思路:SAX 和DOM。SAX 基於事件觸發機制, 對XML 檔案進行一次掃描,完成要進行的處理;DOM 則將整個XML 檔案構造為一棵DOM 樹,通過對DOM 樹的遍曆完成處理。這兩種方法各有優缺點,SAX 的處理思路相對抽象, DOM 的處理過程相對煩瑣,都不很適合新手的入門。 PHP5 推出了一套新的XML 處理函數,即SimpleXML。名如其實,SimpleXML 本身小
Time of Update: 2017-01-19
先上張圖實現原理先讀取資料,用相應的資料區段寫入CSV的行的對應段,然後儲存為CSV即可,在最新版的淘寶助手中測試通過了實現代碼複製代碼 代碼如下:function totaobao() { //載入所選商品 $map['goods_id'] = array(
Time of Update: 2017-01-19
/** * 將字串填充成指定長度的字串(多位元組安全) * @param string $str 指定被填充的字串 * @param int $len 指定被填充的字串的長度,如果值為負數或小於字串的長度則不填充 * @param string $pad_str 要填充的字串 * @param int $pad_type 指定填充的方向STR_PAD_RIGHT,STR_PAD_LEFT或STR_PAD_BOTH * @return string */ // string
Time of Update: 2017-01-19
一個簡單樣本 現有一個學生資訊資料庫,需要一次性刪除多條記錄 建立一個名為del.php的檔案 代碼如下: 複製代碼 代碼如下: <form action="sc.php" method=post> <table border=1 width=60% align=center> <caption>學生資訊表</caption>
Time of Update: 2017-01-19
萬網 whois(使用的介面為萬網提供合法介面) 複製代碼 代碼如下: function whois_hichina($domain) { preg_match("|<pre>(.+?)</pre>|is", @file_get_contents('http://whois.hichina.com/cgi-bin/whois?domain='.$domain.''), $whois); $whois[0] =
Time of Update: 2017-01-19
這個類可以用來搜尋在給定的文本目錄中的檔案。 它可以給定目錄遍曆遞迴尋找某些副檔名的檔案。 並開啟找到的檔案,並檢查他們是否包含搜尋字詞語。 它返回一個含有所有檔案的列表包含搜尋字詞語數組。 複製代碼 代碼如下: <?php /* Class for searching the contents of all the files in a directory and its subdirectories For support please visit
Time of Update: 2017-01-19
html與php編寫中echo可以同時輸出多個字串,並不需要圓括弧。 print只可以同時輸出一個字串,需要圓括弧。 print的用法和C語言很像,所以會對輸出內容裡的%做特殊解釋。 echo無傳回值,print()有傳回值,當其執行失敗(比如斷線)時返回flase 。 echo可以多個參數,print一個參數。推薦用echo。 看下面的例子就能明白php中print <<<EOT是幹什麼用的了: 複製代碼 代碼如下: print <<<EOT
Time of Update: 2017-01-19
0、用單引號代替雙引號來包含字串,這樣做會更快一些。因為PHP會在雙引號包圍的字串中搜尋變數,單引號則不會,注意:只有echo能這麼做,它是一種可以把多個字串當作參數的“函數”(譯註:PHP手冊中說echo是語言結構,不是真正的函數,故把函數加上了雙引號)。 1、如果能將類的方法定義成static,就盡量定義成static,它的速度會提升將近4倍。2、$row['id'] 的速度是$row[id]的7倍。3、echo 比 print
Time of Update: 2017-01-19
一直以來用這個函數擷取: 複製代碼 代碼如下: function microtime_float(){ list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } 看到別人的源碼中用microtime(true),查了下手冊,原來從PHP 5.0.0 開始,microtime增加了這個參數。 引用 複製代碼 代碼如下: mixed microtime ( [bool
Time of Update: 2017-01-19
首先本例基於留言本整理版修改。 我們使用了jquery.js來實現ajax和dom刪除 首先加入複製代碼 代碼如下:<script type="text/javascript" src="lib/jquery.js"></script> 給table加個複製代碼 代碼如下:id="t<!--{$item.id}-->" 寫個js: 複製代碼 代碼如下: <script> function delItem (id) {
Time of Update: 2017-01-19
網上的解決辦法說抓取後用iconv()轉碼。看後我就覺 得不對勁:一個是不一定編譯了iconv庫,更大的問題是編碼都跟流轉換的時候有關(如果用了iconv實際上php轉了兩次碼:流 -> UTF-8 -> GB2312):這不是白忙乎了嗎? 仔細看了下php的文檔(不知道大家都是怎麼寫代碼的,其實文檔上很清楚啊),上面關於fopen()及file_get_contents()都
Time of Update: 2017-01-19
複製代碼 代碼如下: //———————————————————————————– // 函數名:CheckLengthBetween($C_char, $I_len1, $I_len2=100) // 作 用:判斷是否為指定長度內字串 // 參 數:$C_char(待檢測的字串) // $I_len1 (目標字串長度的下限) // $I_len2 (目標字串長度的上限) // 傳回值:布爾值 // 備 註:無 //———————————————————————————– function
Time of Update: 2017-01-19
複製代碼 代碼如下:<?php //search函數 其中$array為數組,$k為要找的值,$low為尋找範圍的最小索引值,$high為尋找範圍的最大索引值 function search($array, $k, $low=0, $high=0) { if(count($array)!=0 and $high == 0) //判斷是否為第一次調用 { $high = count($array); } if($low <= $high) //如果還存在剩餘的數組元素 { $mid =
Time of Update: 2017-01-19
複製代碼 代碼如下:function tb_json_encode($value, $options = 0) { return json_encode(tb_json_convert_encoding($value, “GBK”, “UTF-8″)); } function tb_json_decode($str, $assoc = false, $depth = 512) { return tb_json_convert_encoding(json_decode($str, $assoc),
Time of Update: 2017-01-19
輸出控制函數不對使用 header() 或 setcookie(), 發送的檔案頭資訊產生影響,只對那些類似於 echo() 和 PHP 代碼的資料區塊有作用。 我們先舉一個簡單的例子,讓大家對Output Control有一個大致的印象: Example 1. PHP代碼 複製代碼 代碼如下: <? ob_start(); //開啟緩衝區 echo "Hello\n"; //輸出 header(“location:index.php”); //把瀏覽器重新導向到index.php ob_
Time of Update: 2017-01-19
複製代碼 代碼如下:<?php // literally from the ABNF in rfc3986 (thanks to 'WCP') function validateIPv6($IP) { return preg_match('/\A (?: (?: (?:[a-f0-9]{1,4}:){6} ::(?:[a-f0-9]{1,4}:){5} (?:[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){4} (?:(?:[a-f0-9]{1,4}:){0,1}[
Time of Update: 2017-01-19
foreach 通過在 $value 之前加上 & 很容易就能修改數組的單元,如: PHP代碼 複製代碼 代碼如下: foreach($arr as $value){ $value .= '4'; } 但這個用法也很容易造成錯誤,而且也不容易找。 看例子更直截了當: PHP代碼 複製代碼 代碼如下: <?php $arr = array('a','b','c'); $arr2 = array('d', 'e', 'f'); foreach($arr as
Time of Update: 2017-01-19
1、截取GB2312字元用的函數 PHP代碼 複製代碼 代碼如下: <?php //截取中文字串 function mysubstr($str, $start, $len) { $tmpstr = ""; $strlen = $start + $len; for($i = 0; $i < $strlen; $i++) { if(ord(substr($str, $i, 1)) > 0xa0) { $tmpstr .= substr($str, $i, 2); $i++; }
Time of Update: 2017-01-19
因為PHP會在雙引號包圍的字串中搜尋變數,單引號則不會,注意:只有echo能這麼做,它是一種可以把多個字串當作參數的“函數”(譯註:PHP手冊中說echo是語言結構,不是真正的函數,故把函數加上了雙引號)。 1、如果能將類的方法定義成static,就盡量定義成static,它的速度會提升將近4倍。 2、$row['id'] 的速度是$row[id]的7倍。 3、echo 比 print 快,並且使用echo的多重參數(譯註:指用逗號而不是句點)代替字串串連,比如echo $str1,$str2。
Time of Update: 2017-01-19
代碼 複製代碼 代碼如下: <?php $url = 'www.baidu.com'; //抓取百度 echo snapshot($url); //輸出結果為圖片地址 echo snapshot($url, './baidu.png'); //將圖片儲存至本地baidu.png, 輸出內容圖片大小 /** * 產生網頁快照 * * @param string $site 目標地址 * @param string $path 儲存地址, 為空白則不儲存 * @param integer