Time of Update: 2016-07-13
有時候為了達到一定目的,需要對二維數組進行排序,現分享一下其實現的方法。複製代碼 代碼如下:$arr=array ('1' => array ( 'date' => '2011-08-18', 'num' => 5 ) ,'2' => array ( 'date' => '2011-08-20', 'num' => 3 ) ,'3' => array ( 'date' => '2011-08-17', 'num' => 10 ) ) ; $result = sysSortArray($arr,
Time of Update: 2016-07-13
給各位介紹一下Curl多線程執行個體與原理。不對之處請指教相信許多人對php手冊中語焉不詳的curl_multi一族的函數頭疼不已,它們文檔少,給的例子 更是簡單的讓你無從借鑒,我也曾經找了許多網頁,都沒見一個完整的應用例子。curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init
Time of Update: 2016-07-13
看手冊說define定義的常量只允許:僅允許標量和 null。標量的類型是 integer, float,string 或者 boolean。 也能夠定義常量值的類型為 resource ,但並不推薦這麼做,可能會導致未知狀況的發生。今天閱讀php源碼,發現define的第二個參數其實也可以是一個對象。先貼一段樣本:複製代碼 代碼如下:class A { public function __toString() { return 'bar'; }}$a = new A(
Time of Update: 2016-07-13
本文介紹一篇關於php 二維數組以某一鍵名進行分組相加的執行個體程式,如果是從資料庫裡取資料的時候大可以SELECT SUM(t_value),t_id FROM t_table GROUP BY t_id,但是如果是在php程式中處理類似的問題就稍微麻煩點了,這裡給個函數就是處理類似的問題複製代碼 代碼如下:/* 函數功能:對二維數組以某一鍵名進行分組相加,返回新的二維數組 * 參數說明:$arr-源數組;$new_arr-相加後得到的新數組;$target_key-要分組的鍵名
Time of Update: 2016-07-13
伺服器環境:CentOS – 5.4php升級:5.4.14 - 5.5.0升級心得:比較順利,但是有一點需要說明:eaccelerator無法相容php5.5.0,好在php在5.5.0預設提供了Zend OPcache,所以一直習慣eaccelerator的朋友如果要升級到php5.5.0的話,可能要暫時和eaccelerator說bye
Time of Update: 2016-07-13
直接看代碼吧,很簡單的一個PHP類複製代碼 代碼如下:$IDCard = new IDCard(); var_dump($IDCard::isCard($_GET['card'])); /** * 身份證處理類 */class IDCard { //檢證身份證是否正確 public static function isCard($card) { $card = self::to18Card($card); if (strlen($card) !
Time of Update: 2016-07-13
複製代碼 代碼如下:function chineseFirst($str){ $str= iconv("UTF-8","gb2312", $str); //如果程式是gbk的,此行就要注釋掉 //判斷字串是否全都是中文 if (preg_match("/^[\x7f-\xff]/", $str)) { $fchar=ord($str{0}); if($fchar>=ord("A") and $fchar $a =
Time of Update: 2016-07-13
約定幾個目錄/usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.ini一,php-fpm的啟動參數複製代碼 代碼如下:#測試php-fpm配置/usr/local/php/sbin/php-fpm -t/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf -
Time of Update: 2016-07-13
要提取google搜尋的部分資料,發現google對於軟體抓取它的資料屏蔽的厲害,以前偽造下 USER-AGENT 就可以抓資料,但是現在卻不行了。利用抓包資料發現,Google 判斷了 cookies,當你沒有cookies的時候,直接返回 302 跳轉,而且是連續幾十個302跳轉,根本抓不了資料。因此,在發送搜尋命令時,需要先提取 cookies
Time of Update: 2016-07-13
一、前話:1.1、環境選擇:重新在mac上配置php,原本mac上就內建有apach、php以及pgsql,如果圖簡單的話,直接用就可以了,不過在安裝前我仔細思考了一下幾個問題:選apache還是nginx:兩個我瞭解的都比較少,相對而言我接觸nginx比較多,伺服器用的也是nginx,沒辦法誰叫nginx負載高呢。為了更好的接觸nginx的環境,我決定還是統一下環境,方便今後使用,這是這次的主要關鍵;安裝php:Mac
Time of Update: 2016-07-13
當然要寫先安裝php的擴充,可參考這篇文章:Redis及PHP擴充安裝修改php.ini的設定複製代碼 代碼如下:session.save_handler = redissession.save_path = “tcp://127.0.0.1:6379″修改後重啟php-fpm或nginx,phpinfo()session redis如果不想修改php.ini可這樣複製代碼
Time of Update: 2016-07-13
今天接到的功課是從一個網站擷取商品庫存,但是這個網站需要登入,我用fsockopen傳遞了整個header頭都沒用,只能求助於curl了。附帶說一下curl模組的開啟辦法:(1)從php目錄下拷貝:libeay32.dll,ssleay32.dll 到windows目錄下。(2)開啟php.ini,尋找“extension_dir =
Time of Update: 2016-07-13
在Mac OS上安裝redis首先是安裝,它會預設安裝到/usr/local/bin下複製代碼 代碼如下:cd /tmpwget http://redis.googlecode.com/files/redis-2.6.9.tar.gztar -zxf redis-2.6.9.tar.gzcd redis-2.6.9makesudo make install然後下載一些設定檔(主要就是把deamon開啟之類的,沒對比與預設配置的區別)複製代碼 代碼如下:wget
Time of Update: 2016-07-13
如何在PHP上顯示JFreechart?可能大部分都遇到這種情況,在JSP上的servlet能完全的顯示出JFreechart畫的統計圖,但是和其他語言混合運用就不能顯示了 我現在也遇到這個問題,想了半個小時終於弄明白了,實現的過程還是很簡單的。(個人經驗總結而已) 解決的思路: 1.先將JFreechart產生的圖片儲存在網頁伺服器上。 2.然後在JSP上用標籤顯示 3.通過JS將JSP匯入PHP頁面 這樣就實現了。 部分getColumnChart.jsp源碼: 複製代碼 代碼如下:
Time of Update: 2016-07-13
一、適用情境:無法使用從資料庫中返回的自增長數字,給上傳圖片重新命名。這是圖片或檔案上傳的流程決定的。一般圖片上傳處理過程是,先上傳圖片到伺服器,重新命名之後,插入到資料庫。也就是說,在資料庫中非常容易獲得的自增長id,無法用於給上傳的圖片重新命名,來避免檔案名稱的重複,而採用從資料庫中擷取最大id加1的方式,增加了資料庫連接的次數,不適用於高並發和資料量巨大的情況;二、常規方案:1,guid:32 字元十六進位數。格式:GUID
Time of Update: 2016-07-13
隨著行動裝置的普及,網站也會迎來越來越多行動裝置的訪問。用適應PC的頁面,很多時候對手機使用者不友好,那麼有些時候,我們需要判斷使用者是否用手機訪問,如果是手機的話,就跳轉到指定的手機友好頁面。這裡就介紹一下,如何判斷使用者是否用手機訪問。自訂的函數如下:複製代碼 代碼如下:$agent = check_wap();if( $agent ){ header('Location: http://www.nowamagic.net'); exit;}// check if wap
Time of Update: 2016-07-13
複製代碼 代碼如下:// PHP根據社會安全號碼,自動擷取對應的星座函數function get_xingzuo($cid) { // 根據社會安全號碼,自動返回對應的星座 if (!isIdCard($cid)) return ''; $bir = substr($cid,10,4); $month = (int)substr($bir,0,2); $day = (int)substr($bir,2); $strValue = ''; if (($month == 1 && $day >= 2
Time of Update: 2016-07-13
例1、php內建的函數可以去除/刪除字串中的HTML標籤/代碼。strip_tags(string,allow):函數剝去 HTML、XML 以及 PHP 的標籤。參數:string,必填,規定要檢查的字串;allow,選填,規定允許存在的標籤,這些標籤不會被刪除。複製代碼 代碼如下:$str = '郭碗瓢盆-PHP'; $str1 = strip_tags($str); // 刪除所有HTML標籤 $str2 = strip_tags($str,''); // 保留 標籤
Time of Update: 2016-07-13
看代碼就會的小例子:php合并js請求複製代碼 代碼如下://頁面儲存為js.php//前台請求範例http://localhost/js.php?f=1,2//請求1.js,2.js兩個檔案header("Content-Type:application/x-javascript");header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");header("Cache-Control: max-age=".(86400*30))
Time of Update: 2016-07-13
如何?事件監聽,參考了jQuery的事件綁定思路,簡單的實現了一下。主要功能:1.綁定事件 支援一個事件綁定多個動作,支援綁定一次性事件2.觸發事件3.登出事件複製代碼 代碼如下:class Event { protected static $listens = array(); public static function listen($event, $callback, $once=false){