Time of Update: 2016-07-21
有這樣的一個問題mysql查詢使用mysql中left(right)join篩選條件在on與where查詢出的資料是否有差異。可能只看著兩個關鍵字看不出任何的問題。那我們使用實際的例子來說到底有沒有差異。例如存在兩張表結構表結構1複製代碼 代碼如下:drop table if EXISTS A; CREATE TABLE A ( ID int(1) NOT NULL, PRIMARY KEY (ID) ) ENGINE=MyISAM DEFAULT CHARSET=latin1
Time of Update: 2016-07-21
fopen() 函數用於在 PHP 中開啟檔案。此函數的第一個參數含有要開啟的檔案的名稱,第二個參數規定了使用哪種模式來開啟檔案:複製代碼 代碼如下:$file=fopen("welcome.txt","r");?>檔案可能通過下列模式來開啟:r : 唯讀。指標定位在檔案的開頭,如果檔案不會報錯。r+: 讀/寫。指標定位在檔案的開頭,如果檔案不存會報錯。w : 唯寫。開啟並清空檔案的內容,如果檔案不存在,則建立新檔案。w+: 讀/寫。開啟並清空檔案的內容,如果檔案不存在,則建立新檔案。a :
Time of Update: 2016-07-21
1、nginx相對於apache的優點: 輕量級,同樣起web 服務,比apache佔用更少的記憶體及資源 抗並發,nginx 處理請求是非同步非阻塞的,而apache 則是阻塞型的,在高並發下nginx 能保持低資源低消耗高效能 高度模組化的設計,編寫模組相對簡單 社區活躍,各種高效能模組出品迅速啊 apache 相對於nginx 的優點: rewrite ,比nginx 的rewrite 強大 動態網頁面模組超多,基本想到的都可以找到 少bug ,nginx 的bug 相對較多 超穩定
Time of Update: 2016-07-21
有時候可變的變數名會給編程帶來很大的方便。也就是說變數名可以被動態命名和使用。通常變數通過下面這樣的語句來命名 :$a = 'hello';可變變數名指的是使用一個變數的值作為這個變數的名稱。在上面的例子中,通過使用兩個$符號,你可以把hello設定成一個變數的名稱,就像下面那樣。$$a = 'world'; 通過上面的兩個語句,有兩個變數被定義:變數$a,裝的內容是”hello” 以及變數$hello,裝的內容是 “world”。 於是,下面的語言:echo "$a ${$a}";
Time of Update: 2016-07-21
Oracle 就不說了,Linux 是 CentOS。1. 安裝 httpd(apache)yum install httpd -y2. 安裝 php, php-gd, php-mcrypt, php-pecl*yum install php php-gd php-mcrypt php-pecl* -y3. 安裝 oci8pecl install oci8安裝時輸入oracle安裝目錄4.修改 httpd.conf找到User apacheGroup
Time of Update: 2016-07-21
一.摘要所有Web程式都會使用Session儲存資料. 使用獨立的Session伺服器可以解決負載平衡情境中的Session共用問題.本文介紹.NET平台下建立Session伺服器的幾種辦法, 並介紹在使用Session時的各種經驗和技巧. 二.關於Session,SessionID和CookiesSession資料儲存在伺服器端, 但是每一個用戶端都需要儲存一個SessionID, SessionID儲存在Cookies中,
Time of Update: 2016-07-21
flush函數:重新整理輸出緩衝ob_clean函數:清空輸出緩衝ob_end_clean函數:清空緩衝區並且關閉進行中的輸出緩衝ob_end_flush函數:發送緩衝區資料並且關閉緩衝區ob_flush函數:發送緩衝區資料ob_get_clean函數:擷取緩衝區內容並且結束緩衝區ob_get_contents函數:擷取緩衝區資料ob_get_flush函數:重新整理緩衝區資料,返回資料並且關閉緩衝區ob_get_length函數:擷取緩衝區長度ob_get_level函數:擷取緩衝區等級ob_
Time of Update: 2016-07-21
一次性讀取csv檔案內所有行的資料複製代碼 代碼如下:$file = fopen('windows_2011_s.csv','r'); while ($data = fgetcsv($file)) { //每次讀取CSV裡面的一行內容//print_r($data); //此為一個數組,要獲得每一個資料,訪問數組下標即可$goods_list[] = $data; }//print_r($goods_list);/* foreach ($goods_list as $arr){ if ($
Time of Update: 2016-07-21
複製代碼 代碼如下:function encode_pass($tex,$key,$type="encode",$expiry=0){ $chrArr=array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z', 'A','B','C','D','E','F','G','H','I','J','K'
Time of Update: 2016-07-21
複製代碼 代碼如下:$data[] = array('volume' => 67, 'edition' => 2);$data[] = array('volume' => 86, 'edition' => 1);$data[] = array('volume' => 85, 'edition' => 6);$data[] = array('volume' => 98, 'edition' => 2);$data[] = array('volume' => 86, 'edition' => 6);
Time of Update: 2016-07-21
複製代碼 代碼如下: // 請求 PHPmailer類 檔案 require_once("class.phpmailer.php"); //發送Email函數 function smtp_mail ( $sendto_email, $subject, $body, $extra_hdrs, $user_name) { $mail = new PHPMailer(); $mail->IsSMTP(); //
Time of Update: 2016-07-21
複製代碼 代碼如下: private function _deleteSubNode($ids){ $subNodes = array(); $mod = D('Node'); foreach (explode ( ',', $ids ) as $k){ $res = $this->_getSubNode($k,$subNodes[$k],$mod); //擷取子節點 if(!empty($res[0
Time of Update: 2016-07-21
一、引言產品分類,多級的樹狀結構的論壇,郵件清單等許多地方我們都會遇到這樣的問題:如何儲存多級結構的資料?在PHP的應用中,提供後台資料存放區的通常是關係型資料庫,它能夠儲存大量的資料,提供高效的資料檢索和更新服務。然而關係型資料的基本形式是縱橫交錯的表,是一個平面的結構,如果要將多級樹狀結構儲存在關係型資料庫裡就需要進行合理的翻譯工作。接下來我會將自己的所見所聞和一些實用的經驗和大家探討一下:層級結構的資料儲存在平面的資料庫中基本上有兩種常用設計方法: *
Time of Update: 2016-07-21
廢話不多說,上代碼複製代碼 代碼如下://查詢禁止IP$ip =$_SERVER['REMOTE_ADDR'];$fileht=".htaccess2";if(!file_exists($fileht)) file_put_contents($fileht,"");$filehtarr=@file($fileht);if(in_array($ip."\r\n",$filehtarr)) die("Warning:".""."Your IP address are forbided by
Time of Update: 2016-07-21
第一個是import標籤 ,匯入方式採用類似ThinkPHP的import函數的命名空間方式,例如:import標籤(採用命名空間方式引入資源檔)閉合閉合標籤屬性file(必須):要引入的資源檔,支援變數type(可選):引入的資源檔類型,預設為js,支援js css和phpbasepath(可選):命名空間的基礎路徑樣本:Type屬性預設是js,
Time of Update: 2016-07-21
Varnish是一款高效能的開源HTTP加速器,挪威最大的線上報紙 Verdens Gang 使用3台Varnish代替了原來的12台Squid,效能比以前更好。但與老牌的squid相比,各有各的優劣勢,網上大量的相對比較只是在其個人對自己熟悉的應用的最大使用上的發揮而已,可能squid到了有能力的人手上才足以發揮最強大的威力Varnish採用了“Visual Page
Time of Update: 2016-07-21
一 反射的使用: 複製代碼 代碼如下:class Person{ public $name; function __construct($name){ $this->name=$name; }}interface Module{ function execute();}class FtpModule implements Module{ function setHost($host){ print "FtpModule::setHost():$host\n"; } function
Time of Update: 2016-07-21
複製代碼 代碼如下:// 欄位字串為$querys = array("name"=>"shian");// 數值等於多少$querys = array("number"=>7);// 數值大於多少$querys = array("number"=>array('$gt' => 5));// 數值大於等於多少$querys = array("number"=>array('$gte' => 2));// 數值小於多少$querys = array("number"=>array('$lt' =>
Time of Update: 2016-07-21
1. bash中的$相關參數 複製代碼 代碼如下:$0 - 表示當前檔案名稱 $* - 以空格分離所有參數,形成一個字串 $@ - 以空格分離所有參數,形成一個字串組合。與$*的不同表現在被""引用時,"$*"是一個字串,而"$@"則包含多個字串 $# - 傳遞給進程的參數數目 $? - 上一條命令的執行結果,沒有錯誤時為0 $$ - 本條命令的PID 2. bash技巧,由變數的內容來組合為另一個變數的變數名 EXAMPLE: 複製代碼
Time of Update: 2016-07-21
1.盡量靜態化:如果一個方法能被靜態,那就聲明它為靜態,速度可提高1/4,甚至我測試的時候,這個提高了近三倍。當然了,這個測試方法需要在十萬級以上次執行,效果才明顯。其實靜態方法和非靜態方法的效率主要區別在記憶體:靜態方法在程式開始時產生記憶體,執行個體方法在程式運行中產生記憶體,所以靜態方法可以直接調用,執行個體方法要先成生執行個體,通過執行個體調用方法,靜態速度很快,但是多了會佔記憶體。任何語言都是對記憶體和磁碟的操作,至於是否物件導向,只是軟體層的問題,底層都是一樣的,只是實現方法不同。靜