Time of Update: 2017-01-19
在php中,訪問類的方法/變數有兩種方法: 1. 建立對象$object = new Class(),然後使用”->”調用:$object->attribute/function,前提是該變數/方法可訪問。 2. 直接調用類方法/變數:class::attribute/function,無論是靜態/非靜態都可以。但是有前提條件: A. 如果是變數,需要該變數可訪問。 B. 如果是方法,除了該方法可訪問外,還需要滿足: b1) 如果是靜態方法,沒有特殊條件; b2) 如果是非靜態方法,
Time of Update: 2017-01-19
複製代碼 代碼如下: function array_remove_key($array, $keys) { $num = count($keys); $num_last = $num - 1; $this_array_0 = &$array; $last_key = $keys[$num_last]; for ($i = 0; $i < $num_last; $i++) { $this_key = $keys[$i]; $this_var_name = 'this_array_' .
Time of Update: 2017-01-19
複製代碼 代碼如下: <?php /** * 擷取百度的熱詞 * @user 小傑 * @from http://www.isharey.com/?p=354 * @return array 返回百度的熱詞資料(數組返回) */ function getBaiduHotKeyWord() { $templateRss = file_get_contents('http://top.baidu.com/rss_xml.php?p=top10'); If
Time of Update: 2017-01-19
複製代碼 代碼如下: <?php /* *檔案名稱:linearList.php * 功能:資料結構線性表的順序儲存實現 * author:黎錦煥 * @copyright:www.drw1314.com */ class linearList { private $arr; private $length; const MAXSIZE=100; /* *建構函式,判斷空表還是飛空表,並且進行執行個體化 * @param array $arr 輸入的數組 * @param int $n
Time of Update: 2017-01-19
實現線上報名和上傳作品的思路是利用網頁表單收集使用者填寫的資料儲存到Mysql資料庫內,同時以該使用者的註冊名建立一個FTP上傳帳號並建立該使用者的相應目錄。 Ftp伺服器是系統預設帶的,採用系統使用者的使用者名稱和密碼,建立系統使用者就等於建立FTP使用者,FreeBSD是屬於UNIX陣營的作業系統,它沒有象Linux一樣的useradd和groupadd等建立使用者和組的命令,其取而代之的是pw命令加上相應參數來實現,在Freebsd上以管理員的身份建立一個使用者的命令是 複製代碼
Time of Update: 2017-01-19
直接上代碼吧! 複製代碼 代碼如下: <?php /* * 插入排序(一維數組) * 每次將一個待排序的資料元素,插入到前面已經排好序的數列中的適當的位置,使數列依然有序;直到待排序的資料元素全部插入完成為止。 */ function insertSort($arr){ if(!is_array($arr) || count($arr)==0){ return $arr; } $count = count($arr); for($i=1; $i<$count; $i++){
Time of Update: 2017-01-19
首頁大概3KB,是在本地測試的 複製代碼 代碼如下: file_get_contents('shadow.xml'); 耗時 0.0003 秒 複製代碼 代碼如下: $indexFile = fopen('shadow.xml', 'r');while ( !feof($indexFile)) fgetc( $indexFile); 耗時 0.026 秒 複製代碼 代碼如下: $indexFile = fopen('shadow.xml', 'r');fread($indexFile, 10
Time of Update: 2017-01-19
PayPal支付功能其實一直在更新文檔和介面,這裡說的是一個簡單的支付功能大概流程如下1,在網站的結賬頁面,設定一個提交到PayPal網站的form,裡面有一些金額,商品名稱,商家收款帳號、結賬成功後返回URL等內容,2,使用者結賬時,通過點擊‘使用PayPal結賬'的按鈕到達PayPal的結賬頁面,輸入自己的PayPal使用者名稱和密碼並確認支付3,PayPal會根據是否支付成功來決定返回網站的哪個頁面,並在後台對網站的某個頁面發起post請求,這個動作稱作IPN,告訴網站這筆付款的到賬情況,
Time of Update: 2017-01-19
下面就用一段程式碼範例來示範一下PHP進階對象構建中的使用多個建構函式進行對象構建的原理。 複製代碼 代碼如下: <?php class classUtil {//這是一個參數處理的類 public static function typeof($var){ if (is_object($var)) return get_class($var);//如果是對象,擷取類名 if (is_array($var)) return "array";//如果是數組,返回"array" if (is_
Time of Update: 2017-01-19
PHP設計模式原廠模式的使用方法 複製代碼 代碼如下: <?php /* * 每日練習 PHP設計模式原廠模式的使用方法 * PHP原廠模式不難理解,顧名思義,就是一個加工廠,然後工廠是製造產品的,只要製造產品 * 就必須有幾個要素:"方法","模型","工廠車間"。 */ /*第一種樣本 普通原廠模式 * */ abstract class model {//產品模型 abstract function getNames(); } class zhangsan extends
Time of Update: 2017-01-19
複製代碼 代碼如下: <!?php /****** 備份資料庫結構 ******/ /* 函數名稱:table2sql() 函數功能:把表的結構轉換成為SQL 函數參數:$table: 要進行提取的表名 返 回 值:返回提取後的結果,SQL集合 函數作者:heiyeluren */ function table2sql($table) { global $db; $tabledump = "DROP TABLE IF EXISTS $table;n"; $createtable =
Time of Update: 2017-01-19
複製代碼 代碼如下: <?php //在你的開始處加入 ob_start(); ob_start(); //以下是你的代碼 //在結尾加入 ob_end_clean(),並把本頁輸出到一個變數中 $temp = ob_get_contents(); ob_end_clean(); //寫入檔案 $fp = fopen(‘檔案名稱','w'); fwrite($fp,$temp) or die(‘寫檔案錯誤'); ?>
Time of Update: 2017-01-19
mysql_pconnect在單一進程,特別是一直保持執行的監控程式,特別適用。 mysql_pconnect用法和mysql_connect類似: 複製代碼 代碼如下: <?php $conn = mysql_pconnect($host,$user,$pwd); mysql_select_db($dbname,$conn); $result=mysql_query("select * from table_name where col_id ='test_id'", $conn); $
Time of Update: 2017-01-19
本文執行個體講述了php使用curl出現Expect:100-continue解決方案。分享給大家供大家參考。具體如下:使用curl
Time of Update: 2017-01-19
本文執行個體總結了php實現四捨五入的方法。分享給大家供大家參考。具體分析如下:php實現四捨五入的三種方法,分別通過number_format函數、round函數和sprintf格式化輸出的方法實現四捨五入1.number_format 方法實現四捨五入$number = 1234.5678; $nombre_format_francais = number_format($number, 2, ',', ' '); // 1 234,57 $english_format_number =
Time of Update: 2017-01-19
本文執行個體講述了php開啟多進程的方法。分享給大家供大家參考。具體實現方法如下:複製代碼 代碼如下:<?php $IP='192.168.1.1';//Windows電腦的IP $Port='5900'; //VNC使用的Port $ServerPort='9999';//Linux Server對外使用的Port $RemoteSocket=false;
Time of Update: 2017-01-19
Mac下搭建lamp開發環境很容易,有xampp和mamp現成的Integration Environment。但是Integration Environment對於經常需要自訂一些配置的開發人員來說會非常麻煩,而且Mac本身內建apache和php,在brew的協助下非常容易手動搭建,可控性很高。Brewbrew對於mac,就像apt-get對於ubuntu,安裝軟體的好幫手,不能方便更多…brew的安裝方式如下:複製代碼 代碼如下:ruby -e "$(curl -fsSL https://
Time of Update: 2017-01-19
今天同事項目中遇到一個問題,通過http介面擷取的json字串使用json_decode始終無法正確解析,返回空白。直接把結果字串複製出來手動建立一個變數卻正常,在前端js也能解析,搞了半天不得其解,藉助強大的Google解決了問題,答案是介面吐出的結果包含有BOM頭,BOM頭這個東西可謂是php的死敵啊不說了,直接上解決辦法:複製代碼 代碼如下:if (substr($return, 0,3) == pack("CCC",0xef,0xbb,0xbf)) {
Time of Update: 2017-01-19
我這個部落格為了提高運行效率在vps上裝了opcache擴充,結果發現有個頁面返回502,其他頁面正常。檢查了php-fpm日誌,發現是php-fpm子進程不知道為什麼會崩潰,然後把opcache關了就正常。中間折騰的過程就不提了,總之最後發現應該是和另外一個擴充 zend guard衝突導致的,搞笑的是,只要我把php.ini中[zend guard] 配置段放在[zend opcache]後面就正常了。不想繼續深究了,如果你對php底層熟悉,可以為我解惑。
Time of Update: 2017-01-19
最近在幫同事解決Swoole Server問題時,發現有1個worker進程一直處於R的狀態,而且CPU耗時非常高。初步斷定是PHP代碼中發生死迴圈。下面通過一段代碼展示如何解決PHP死迴圈問題。複製代碼 代碼如下:#dead_loop.php$array = array();for($i = 0; $i < 10000; $i++){ $array[] = $i;}include