Time of Update: 2016-07-21
下面的方法是我對海量資料的處理方法進行了一個一般性的總結,當然這些方法可能並不能完全覆蓋所有的問題,但是這樣的一些方法也基本可以處理絕大多數遇到的問題。下面的一些問題基本直接來源於公司的面試筆試題目,方法不一定最優,如果你有更好的處理方法,歡迎與我討論。 1.Bloom filter 適用範圍:可以用來實現資料字典,進行資料的判重,或者集合求交集 基本原理及要點:
Time of Update: 2016-07-21
比如$smarty.const.'常量',這個就不能用。 其實模板引擎原理上並不複雜,只是把一些模板標籤替換為php中的函數,變數,文法結構罷了。 這次要在ecshop模板中加入引用常量的功能,只需在函數make_var()中加入兩行代碼 複製代碼 代碼如下: function make_var($val) { if (strrpos($val, '.') === false) { if (isset($this->_var[$val]) && isset($this->_patchstack[
Time of Update: 2016-07-21
1.測試方法www.xxx.com/test.php?content_id=自己定義,如:44 複製代碼 代碼如下: $content_id = array();//1.建立一個數組 $content_id[] = $_GET['contentid']; //2.對接受到的ID插入到數組中去 if(isset($_COOKIE['content_id'])) //3.判定cookie是否存在,第一次不存在(如果存在的話) { $now_content = str_replace("\\", ""
Time of Update: 2016-07-21
定義和用法 str_pad() 函數把字串填充為指定的長度。 文法 str_pad(string,length,pad_string,pad_type)參數 描述 string 必需。規定要填充的字串。 length 必需。規定新字串的長度。如果該值小於原始字串的長度,則不進行任何操作。 pad_string 可選。規定供填充使用的字串。預設是空白。 pad_type 可選。規定填充字串的那邊。 可能的值: STR_PAD_BOTH - 填充到字串的兩頭。如果不是偶數,則右側獲得額外的填充。
Time of Update: 2016-07-21
PHP的數組函數眾多,下面是我學習的小結,藉此記之,便於以後鑒之…… 一、數組定義: 數組的定義使用 array()方式定義,可以定義空數組: .foreach遍曆: 複製代碼 代碼如下: $number = array(1,3,5,7,9); //定義空數組 $result = array(); $color =array("red","blue","green"); //自訂索引值 $language = (1=>"English",3=>"Chinese",5=>"Franch")
Time of Update: 2016-07-21
複製代碼 代碼如下: class dbClass{ //開始資料庫類 var $username; var $password; var $database; var $hostname; var $link; var $result; function dbClass($username,$password,$database,$hostname="localhost"){ $this->username=$username; $this->password=$password; $this-
Time of Update: 2016-07-21
二級分類的資料表結構如下: 複製代碼 代碼如下: PHP代碼如下 /** @ 文章分類 含二級分類 @ param int $rootnum -- 一級分類數量 @ param int $childnum -- 二級分類數量 @ 傳回值 array @ date 2011.2.24 */ function temp_articletreecate($rootnum,$childnum){ if(!isnumber($rootnum)){ $rootnum = 10; }
Time of Update: 2016-07-21
index.php 複製代碼 代碼如下: 線上聊天 _a.php 複製代碼 代碼如下: 聊天室 $person = @$_POST[person]; $msg = @$_POST[message]; if ($person!="" && $msg!=""){ $handle = fopen("msg.txt","r"); $tot = 0; $oldmsg = array(); while ($content = fgets($handle)){ $oldmsg[
Time of Update: 2016-07-21
當 HTML 表單 (HTML Form) 的 method 為 get 時,$_GET 用來擷取 HTML Form 的資料。 當 HTML 表單 (HTML Form) 的 method 為 post 時 , $_POST 用來擷取 HTML Form 的資料。 HTML Form 的get 和post 的區別,請參見HTML Form 的get 和post 的區別。 擷取 HTML 表單 (HTML Form) 文本輸入框 (input type="text") 資料 下面是一個
Time of Update: 2016-07-21
四種標量類型:boolean (布爾型) integer (整型) float (浮點型, 也稱作 double) string (字串) 兩種複合類型:array (數組) object (對象) 最後是兩種特殊類型:resource (資源) NULL (NULL) 為了確保代碼的易讀性,本手冊還介紹了一些偽類型:mixed number callback 以及偽變數 $....可能還會讀到一些關於“雙精確度(double)”類型的參考。實際上 double 和 float
Time of Update: 2016-07-21
例子一(POST提交表單): 複製代碼 代碼如下: Chunkify Form 複製代碼 代碼如下: Chunkify Word $word=$_POST['word']; $number=$_POST['number']; $chunks=ceil(strlen($word)/$number); echo "The $number-letter chunks of '$word' are:\n"; for ($i =
Time of Update: 2016-07-21
$_GET 是 PHP 的超級變數之一。 當 HTML 表單 (HTML Form) 的 method 為 get 時 , $_GET 用來擷取 HTML Form 的資料。 擷取 HTML 表單 (HTML Form) 文本輸入框 (input type="text") 資料 下面是一個 HTML 檔案,這個 HTML 含有一個 HTML 表單 (HTML Form),主要用來讓使用者輸入使用者姓名的。 複製代碼 代碼如下: Blablar.com HTML Form Method Get
Time of Update: 2016-07-21
配置環境 系統:win7 PHP版本:5.3.x MYSQL 版本:5.0.27 Apache:2.2.4 (Win32) 設定方法: 開啟D:\wamp\bin\apache\Apache2.2.17\conf\httpd.conf 在最後添加 NameVirtualHost *:80 DocumentRoot "D:\wamp\www\bbs" ServerName www.a.com 配置中應該注意: ServerName *:80 這裡的*可以改為本機ip比如192.168.1.11
Time of Update: 2016-07-21
當訪問者瀏覽受保護頁面時,用戶端瀏覽器會彈出交談視窗要求使用者輸入使用者名稱和密碼,對使用者的身份進行驗證,以決定使用者是否有權訪問頁面。下面用兩種方法來說明其實現原理。 一、用HTTP標題來實現
Time of Update: 2016-07-21
下面就來介紹一下資料庫抽象層PDO的使用: PDO(PHP Data Objects)是一個輕量級的PHP擴充,提供了一個資料訪問抽象層。還要就是PDO只能在PHP5.0以上版本使用。下面來介紹一下PDO常用的預定義常量:PDO::PARAM_BOOL (integer) 表示布林值資料型別PDO::PARAM_NULL (integer) 表示資料類型為NULL的SQLPDO::PARAM_INT (integer)
Time of Update: 2016-07-21
當在php中使用mb_detect_encoding函數進行編碼識別時,很多人都碰到過識別編碼有誤的問題,例如對與GB2312和UTF- 8,或者UTF-8和GBK(這裡主要是對於cp936的判斷),網上說是由於字元短是,mb_detect_encoding會出現誤判。 例如: 複製代碼 代碼如下: $encode = mb_detect_encoding($keytitle, array("ASCII",'UTF-8′,"GB2312′,"GBK",'BIG5′)); if ($encode
Time of Update: 2016-07-21
在使用php的curl擷取遠程檔案,代碼如下: 複製代碼 代碼如下: $ghurl = isset($_GET['id']) ? $_GET['id']:'http://www.baidu.com/'; // php 擷取 function getContents($url){ $header = array("Referer: http://www.baidu.com/"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url);
Time of Update: 2016-07-21
php cookies中刪除的一般賦值方法 cookie 常用於識別使用者。cookie 是伺服器留在使用者電腦中的小檔案。每當相同的電腦通過瀏覽器請求頁面時,它同時會發送 cookie。通過 php,您能夠建立並取回 cookie 的值 文法 複製代碼 代碼如下: setcookie(name, value, expire, path, domain); ** * 設定cookie * n 名稱 * c 值 * e 有效期間 0 預設 一個月 1 關閉立即失效 */ function
Time of Update: 2016-07-21
複製代碼 代碼如下: /* *比較時間段一與時間段二是否有交集 */ function isMixTime($begintime1,$endtime1,$begintime2,$endtime2) { $status = $begintime2 - $begintime1; if($status>0){ $status2 = $begintime2 - $endtime1; if($status2>0){ return false; }else{ return true; } }else{
Time of Update: 2016-07-21
1:取得file對象 2:讀取2進位資料 3:類比http請求,把資料發送出去(這裡通常比較麻煩) 在forefox下使用 xmlhttprequest 對象的 sendasbinary 方法發送資料; 4:完美實現 遇到的問題 目前僅有 firefox 可以正確上傳檔案。(chrome也可以采google.gears上傳) 對於從firefox和chrome下讀取到的檔案資料好像不一樣(不知道是否是調試工具的原因) chrome以及其他進階瀏覽器沒有 sendasbinary 方法 只能使用