Time of Update: 2017-01-19
代碼很簡單就不多廢話了,直接奉上:<?phpecho httpcopy("http://www.baidu.com/img/baidu_sylogo1.gif"); function httpcopy($url, $file="", $timeout=60) { $file = empty($file) ? pathinfo($url,PATHINFO_BASENAME) : $file; $dir = pathinfo($file,PATHINFO_DIRNAME);
Time of Update: 2017-01-19
php產生介面通訊資料/** * 產生介面資料格式 */class Response{ /** * [show 按綜合方式輸出資料] * @param [int] $code [狀態代碼] * @param [string] $message [提示資訊] * @param array $data [資料] * @param [string] $type [類型] * @return [string] [傳回值] */ public static
Time of Update: 2017-01-19
我測試是支援的CSV,SQL,TXT其實其他格式也可以,只不過我用不到而已速度是差不多是每秒一萬吧<?phpset_time_limit(0);ignore_user_abort(true);include('sgk.php');echo "<br><br>";?><?phpfunction array_iconv($data,$output = 'GBK') { $encode_arr =
Time of Update: 2017-01-19
簡單寫了一個PHP的影像處理類庫,雖然功能比較少,但是目前也沒用到太進階的,以後用到了再填吧,或者哪位給點建議加上什麼功能,或者有什麼需求可以跟我說,我有時間加上,如果哪位對這個類庫進行了擴充的話,還麻煩拿出來大家分享一下,代碼現在是能用就行,考慮的東西不是很多,有什麼更好的建議請告訴我,謝謝Img.php<?php/** * Created by PhpStorm. * User: MCtion * Date: 2015/5/14 0014 * Time: 15:36 *
Time of Update: 2017-01-19
PHP 5.4中的traits,是新引入的特性,中文還真不知道如何準確翻譯好。其實際的目的,是為了有的場合想用多繼承,但PHP又沒多繼承,於是就發明了這樣的一個東西。 Traits可以理解為一組能被不同的類都能調用到的方法集合,但Traits不是類!不能被執行個體化。先來例子看下文法:<?phptrait myTrait{ function traitMethod1(){} function
Time of Update: 2017-01-19
在網路狀況比較差的情況下file_get_contents函數經常讀取遠端資料失敗。解決辦法如下:複製代碼 代碼如下:/*設定逾時配合失敗之後嘗試多次讀取,效果比原先好很多*/$url = 'http://www.jb51.net'; $opts = array(
Time of Update: 2017-01-19
最近看書,裡面提到了一些Hash演算法。比較有印象的是Times33,當時理解不是很透測,今天寫了段程式來驗證了一下。先上代碼:複製代碼 代碼如下:<?php/** * CRC32 Hash function * @param $str * @return int */ function hash32($str) { return crc32($str) >> 16 &
Time of Update: 2017-01-19
一般你在迭代一組資料的時候,需要建立一個資料,假設數組很大,則會消耗很大效能,甚至造成記憶體不足。複製代碼 代碼如下://Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in E:\php\test\index.php on line 5range(1,
Time of Update: 2017-01-19
PHP預定了兩個異常類:Exception和ErrorException複製代碼 代碼如下:Exception { /* 屬性 */ protected string $message ; //異常訊息內容 protected int $code ; //異常代碼號 protected string $file ;
Time of Update: 2017-01-19
PHP的輸出緩衝是可以嵌套的。用ob_get_level()就可以輸出嵌套層級。測試發現在cli和瀏覽器下輸出結果不一樣(PHP5.4)。手冊說明如下:ob_get_level() will always return 0 inside a destructor. This happens because the garbage collection for output buffers has already done before the destructor is
Time of Update: 2017-01-19
PHP預設的會話處理器是session.save_handler =
Time of Update: 2017-01-19
stream_context_create()函數是用來 建立開啟檔案的上下檔案選項 ,用於fopen(),file_get_contents()等過程的逾時設定、Proxy 伺服器、請求方式、頭資訊設定的特殊過程。比如說,上篇php教程中gd庫實現下載網頁所有圖片中,第10行:利用了stream_context_create()設定Proxy 伺服器:複製代碼 代碼如下://設定Proxy 伺服器$opts = array('http'=>array('request_fulluri'=
Time of Update: 2017-01-19
在前期的php教程就講了php gd庫可以實現遠程圖片的下載,但是那隻是下載了一張圖片,原理是一樣的,要想下載一個網頁的所有圖片只要使用Regex進行判斷,找出所有的圖片url就可以進行迴圈下載了,我特地參照網路資源編寫了gd庫圖片下載類!php代碼如下:<?phpheader("Content-type:text/html ; charset=utf-8");if (!empty($_POST['submit'])){ $url = $_POST['url'];
Time of Update: 2017-01-19
因為今天想寫個遠程下載圖片的類,提前熱身寫了個php gd庫實現遠程圖片下載功能,當然curl實現更好,php gd庫實現遠程圖片下載功能主要使用gd庫的兩個函數ImageCreateFromXXX()用於產生圖片函數和ImageXXX函數,XXX表示不同圖片的副檔名,所以你要想辦法擷取遠程圖片的副檔名了,附上php代碼如下:<?phpheader("Content-type:text/html ; charset=utf-8"); if
Time of Update: 2017-01-19
SplFixedArray主要是處理數組相關的主要功能,與普通php array不同的是,它是固定長度的,且以數字為鍵名的數組,優勢就是比普通的數組處理更快。看看我原生Benchmark測試:ini_set('memory_limit','12800M'); for($size = 10000; $size < 10000000; $size *= 4) { echo PHP_EOL . "Testing size: $size" . PHP_EOL; for($s =
Time of Update: 2017-01-19
PHP5
Time of Update: 2017-01-19
PHP5添加了一項新的功能:Reflection。這個功能使得程式員可以reverse-engineer class, interface,function,method and extension。通過PHP代碼,就可以得到某object的所有資訊,並且可以和它互動。假設有一個類Person:複製代碼 代碼如下:class Person { /** * For the sake of demonstration, we"
Time of Update: 2017-01-19
整理了一下PHP中讀取檔案的幾個方法,方便以後查閱。1.freadstring fread ( int $handle , int $length )fread() 從 handle 指向的檔案中讀取最多 length 個位元組。該函數在讀取完最多 length 個位元組數,或到達 EOF 的時候,或(對於網路流)當一個包可用時,或(在開啟使用者空間流之後)已讀取了 8192 個位元組時就會停止讀取檔案,視乎先碰到哪種情況。fread() 返回所讀取的字串,如果出錯返回 FALSE。複製代碼
Time of Update: 2017-01-19
說到採集,無非就是遠程擷取資訊->提取所需內容->分類儲存->讀取->展示也算是簡單"小偷程式"的加強版吧下面是對應核心代碼(別拿去做壞事哦^_^)所要採集的內容是某遊戲網站上的公告,如下圖:可先利用file_get_contents和簡單正則擷取基本頁面資訊整理下基本資料,採集入庫:<?php include_once("conn.php"); if($_GET['id']<=8&&$_GET['id']){
Time of Update: 2017-01-19
相信許多人對php手冊中語焉不詳的curl_multi一族的函數頭疼不已,它們文檔少,給的例子 更是簡單的讓你無從借鑒,我也曾經找了許多網頁,都沒見一個完整的應用例子。 curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle