• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            xiaoguozi's Blog
            Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習(xí)慣原本生活的人不容易改變,就算現(xiàn)狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預(yù)料,人們需要更細(xì)心的觀察別人,要隨時注意才能保護(hù)別人,因為他們未必知道自己要什么·····
            $criteria = new CDbCriteria;

            $criteria->addCondition("id=1"); //查詢條件,即where id = 1

            $criteria->addInCondition('id', array(1,2,3,4,5)); //代表where id IN (1,23,,4,5,);

            $criteria->addNotInCondition('id', array(1,2,3,4,5));//與上面正好相法,是NOT IN

            $criteria->addCondition('id=1','OR');//這是OR條件,多個條件的時候,該條件是OR而非AND

            $criteria->addSearchCondition('name', '分類');//搜索條件,其實代表了。。where name like '%分類%'

            $criteria->addBetweenCondition('id', 1, 4);//between 1 and 4

            $criteria->compare('id', 1); //這個方法比較特殊,他會根據(jù)你的參數(shù)自動處理成addCondition或者addInCondition,

            //即如果第二個參數(shù)是數(shù)組就會調(diào)用addInCondition
            $criteria->addCondition("id = :id");

            $criteria->params[':id']=1;

            //一些public vars

            $criteria->select = 'id,parentid,name'; //代表了要查詢的字段,默認(rèn)select='*';

            $criteria->join = 'xxx'; //連接表

            $criteria->with = 'xxx'; //調(diào)用relations

            $criteria->limit = 10; //取1條數(shù)據(jù),如果小于0,則不作處理

            $criteria->offset = 1; //兩條合并起來,則表示 limit 10 offset 1,或者代表了。limit 1,10

            $criteria->order = 'xxx DESC,XXX ASC' ;//排序條件

            $criteria->group = 'group 條件'; $criteria->having = 'having 條件 ';

            $criteria->distinct = FALSE; //是否唯一查詢
            posted @ 2012-01-13 09:51 小果子 閱讀(405) | 評論 (0)編輯 收藏
            1. 目錄
              一、增刪查改
              二、驗證規(guī)則
              三、事務(wù)管理
              四、名字空間。參考:Yii數(shù)據(jù)庫操作——名字空間(named scopes)的三種用法

              一、增刪查改
              1,創(chuàng)建
              $post = new Post;
              $post->title = "";
              $post->content = "";
              $post->created_at = "CDbExpression('NOW()')";
              $post->save();

              (1) 插入后可立即獲得主鍵id。
              $id = $post->id;   // 前提是auto_increment

              (2) 某一個字段的值為缺省值時,可以在models/Class.php中修改
              Class Post extends CActiveRecord{
              public $title = 'new title';
              $post = new Post;
              echo $post->title; // 輸出是: new title
              }

              (3) 使用CDbExpression
              $post->create_time = new CDbExpression('NOW()');


              2,查詢【待補(bǔ)充】
              (1) 通過主鍵查詢
              find("postID=:postID", array(':postID' => postID)
              findByPk($id) // 單主鍵

              (2) 通過非主鍵查詢
              find("postID=:postID", array(':postID' => postID)
              findAll( id = $id )
              findAll( id IN ( $id ) )



              3,更新【待補(bǔ)充】
              先find,并將對應(yīng)字段賦新值,再保存

              可以通過CActiveRecord::isNewRecord來判斷是新建,還是更新。


              4,刪除
              (1) 如果是一條記錄
              先找到后刪除
              $post=Post::model->findByPk(10);
              $post->delete();

              直接通過主鍵刪除(類級別刪除,不需要先載入記錄)
              Post::model->deleteByPk(10);

              (2) 如果是多條記錄(類級別刪除,不需要先載入記錄)
              Post::model->deleteAll();


              二、驗證規(guī)則
              驗證規(guī)則(Data validation)發(fā)生在調(diào)用save()方法的時候。驗證是基于在rules()方法中的定義。

              if( $post->save() ){
              // 驗證通過
              } else {
              // 驗證失敗。通過getErrors()返回錯誤信息。
              }

              獲取用戶從表單提交的數(shù)據(jù)
              $post->title   = $_POST['title'];
              $post->content = $_POST['content'];
              $post->save();

              如果多了,可以通過下面的方式減輕(alleviate)復(fù)雜程度:

              Php代碼
              1. $post->attributes = $_POST['Post'];   
              2. $post->save();   
              3. //類似于:   
              4. foreach($_POST['Post'as $name=>$value){   
              5.     if($name is a safe attribute)   
              6.         $model->$name = $value;   
              7. }  
              $post->attributes = $_POST['Post'];$post->save();//類似于:foreach($_POST['Post'] as $name=>$value){	if($name is a safe attribute)		$model->$name = $value;}


              注意:里面的驗證檢驗非常重要,否則用戶可能繞過授權(quán)。


              三、事務(wù)管理
              dbConnection是CDbConnection的實例
              官方文檔

              Php代碼
              1. $model = Post::model();   
              2. $transaction = $model->dbConnection->beginTransaction();   
              3. try{   
              4.     $post = $model->findByPk(10);   
              5.     $post->title = 'new post title';   
              6.     $post->save();   
              7.     $transaction->commit();   
              8. } catch (Exception $e){   
              9.     $transaction->rollback();   
              10. }  
              $model = Post::model();$transaction = $model->dbConnection->beginTransaction();try{	$post = $model->findByPk(10);	$post->title = 'new post title';	$post->save();	$transaction->commit();} catch (Exception $e){	$transaction->rollback();}



              實際項目

              Php代碼
              1. $trans = Yii::app()->db->beginTransaction();   
              2. try {   
              3.     $manufacturer = new Manufacturer();    
              4.     $manufacturer->name = $name;   
              5.     $manufacturer->email = $email;   
              6.     $manufacturer->save();   
              7.     $trans->commit();   
              8. } catch (Exception $e) {   
              9.     $trans->rollback();   
              10.     $this->response(array('status' => 1, 'msg' => $e->getMessage()));      
              11. }  
              $trans = Yii::app()->db->beginTransaction();try {	$manufacturer = new Manufacturer();		$manufacturer->name = $name;	$manufacturer->email = $email;	$manufacturer->save();	$trans->commit();} catch (Exception $e) {	$trans->rollback();	$this->response(array('status' => 1, 'msg' => $e->getMessage()));	}



              其實使用的時候跟凡客體的我是凡客或淘寶體的親一樣。

              注:Yii::app()后面的db在../config/main.php中已配置

              Php代碼
              1. 'components'=>array(   
              2.     'user'=>array('allowAutoLogin'=>true,),   
              3.     'db'=>array("數(shù)據(jù)庫連接參數(shù)"),   
              4. )  

            posted @ 2012-01-04 16:18 小果子 閱讀(838) | 評論 (0)編輯 收藏
                 摘要: 一、查詢數(shù)據(jù)集合 1、$admin=Admin::model()->findAll($condition,$params); 該方法是根據(jù)一個條件查詢一個集合,如:  findAll("username=:name",array(":name"=>$username));     2、$admin=Admin::mod...  閱讀全文
            posted @ 2012-01-04 16:06 小果子 閱讀(2506) | 評論 (1)編輯 收藏

            如果一切按計劃進(jìn)行,紅帽(Red Hat)將成為第一家年收入超過10億美元的開源軟件廠商。這對于開源軟件社區(qū)將是一個轉(zhuǎn)折點。開源軟件社區(qū)一直認(rèn)為他們基于社區(qū)的開發(fā)方法是可行的、甚至是優(yōu)越的、可替代傳統(tǒng)的軟件的開發(fā)方式。

            紅帽CEO吉姆·懷特赫斯特(Jim Whitehurst)稱,我認(rèn)為,我們將看到產(chǎn)生技術(shù)創(chuàng)新的地方將發(fā)生一個根本的轉(zhuǎn)變,從幾家軟件公司的實驗室轉(zhuǎn)向龐大的開源軟件的努力。

            隨著Linux、Apache Web server、Perl、Apache、Hadoop、OpenOffice、GIMP和幾十個其它的開源軟件計劃給商業(yè)性軟件帶來更大的壓力,開源軟件在過去的幾年里肯定給專有軟件世界帶來了混亂。但是,明天的開源軟件的重量級產(chǎn)品是什么?下面是在2012年需要密切關(guān)注的五個項目。這些項目可能構(gòu)成新的業(yè)務(wù)和新的行業(yè)的基礎(chǔ)。這些項目也可能是僅僅因為能夠更容易地或者更廉價地完成任務(wù)而受到了開發(fā)者和管理者的關(guān)注。

            1.Nginx

            在過去10年的大部分時間里,Web服務(wù)器軟件的選擇一直是穩(wěn)定的。Apache一直在大多數(shù)Web服務(wù)器上應(yīng)用,而微軟的IIS(互聯(lián)網(wǎng)信息服務(wù))用于許多其它的服務(wù)器。然而,在過去的幾年里,第三個進(jìn)入這個市場的Nginx的應(yīng)用一直在增長,因為這個軟件能夠輕松處理高容量的通訊。

            據(jù)Nginx軟件開發(fā)人員預(yù)測,Nginx目前已經(jīng)在5000萬個不同的互聯(lián)網(wǎng)域名上運(yùn)行,大約占整個互聯(lián)網(wǎng)的10%。Nginx特別廣泛地應(yīng)用于通訊量非常大的網(wǎng)站,如Facebook、Zappos、Groupon、Hulu、Dropbox和WordPress。毫不奇怪,這個軟件的創(chuàng)建者伊戈爾·西索夫(Igor Sysoev)在2004年設(shè)計Nginx軟件的時候就是專門為處理大量同時使用網(wǎng)絡(luò)的用戶設(shè)計的,每臺服務(wù)器最多有1萬個連接。該公司共同創(chuàng)始人安德魯·阿萊克謝耶夫(Andrew Alexeev)稱,這是一個非常精細(xì)的架構(gòu)。Nginx公司提供商業(yè)版本的Nginx軟件。

            即將到來的一年將是Nginx的一個好年景。Nginx去年從一些風(fēng)險投資公司那里獲得了300萬美元,其中包括戴爾CEO邁克爾·戴爾(Michael Dell)支持的風(fēng)險投資公司。Nginx與Jet-Stream合作為軟件廠商的CDN(內(nèi)容交付網(wǎng)絡(luò))軟件包提供Nginx軟件。該公司還與亞馬遜合作為AWS(亞馬遜Web服務(wù))云服務(wù)優(yōu)化Nginx軟件。

            除了用于大型網(wǎng)站運(yùn)營之外,阿萊克謝耶夫預(yù)計Nginx將更廣泛地用于新興的云計算和共享的服務(wù)市場。他說,預(yù)計在明年推出的Nginx軟件的下一個重要的發(fā)布版將更適合共享的托管環(huán)境。這個軟件將能夠更好地應(yīng)對分布式拒絕服務(wù)攻擊并且將配置額外的安全功能。

            2.OpenStack

            OpenStack項目進(jìn)入云計算領(lǐng)域的時間比較晚。但是,這個項目有一個不可缺少的功能:可伸縮性。

            OpenStack項目政策委員會主席喬納森·布賴斯(Jonathan Bryce)稱,我們正在談?wù)撌褂肙penStack運(yùn)行一個擁有100臺服務(wù)器或者1000臺服務(wù)器的云。那里的其它選擇確實沒有考慮到這個規(guī)模。

            自從2010年推出以來,OpenStack迅速贏得了惠普、英特爾和戴爾等云計算領(lǐng)域的IT公司的支持。OpenStack的貢獻(xiàn)者喜歡把自己的工作稱作增長速度最快的開源軟件項目,參加者包括144家公司和2100多人。戴爾推出一個名為戴爾OpenStack云解決方案的軟件包,把OpenStack與戴爾自己的服務(wù)器和軟件結(jié)合在了一起。惠普也推出一個采用這個技術(shù)的測試版的公共云服務(wù)。

            OpenStack的核心的計算組件是在美國航天局艾姆斯研究中心(Ames Research Center)為存儲大量空間圖片的一個內(nèi)部云開發(fā)的。據(jù)曾經(jīng)負(fù)責(zé)開發(fā)OpenStack云控制器前艾姆斯研究中心CIO克里斯·坎普(Chris Kemp)稱,美國航天局管理人員原來試圖使用Eucalyptus軟件項目平臺,但是,發(fā)現(xiàn)這個軟件很難升級到需要的水平。

            管理的托管提供商Rackspace的首席技術(shù)官約翰·安格斯(John Engates)說,為了幫助更廣泛地應(yīng)用,OpenStack正在配置許多新的功能,使這個軟件更適合企業(yè)應(yīng)用。一個名為“Keystone”的項目允許機(jī)構(gòu)把OpenStack與自己的身份管理系統(tǒng)結(jié)合起來,或者與基于微軟主動目錄或者其它LDAP(輕型目錄訪問協(xié)議)的身份管理系統(tǒng)結(jié)合起來。此外,開發(fā)人員也正在為這個軟件開發(fā)一個前端門戶。Rackspace還將把這個項目剝離為一個完全獨立的實體,希望它成為更多的云提供商的一個誘人的選擇。

            安格斯稱,2011年將是這個產(chǎn)品打基礎(chǔ)的一年。但是,我認(rèn)為,2012年我們將真正開始利用這個基礎(chǔ)在許多私有云和公共云中使用。

            3.Stig

            過去的一年是Cassandra、MongoDB、CouchDB和無數(shù)其它非關(guān)系數(shù)據(jù)庫的應(yīng)用顯著增長的一年。但是,在9月份舉行的“NoSQL Now”會議上,人們更多談?wù)摰氖巧形窗l(fā)布的數(shù)據(jù)存儲Stig。如果幸運(yùn)的話,我們將在2012年看到Stig。

            Stig的維護(hù)者稱,Stig是為社交網(wǎng)絡(luò)網(wǎng)站的獨特的工作量設(shè)計的。Stig是社交網(wǎng)絡(luò)網(wǎng)站Tagged的軟件工程師杰森·盧卡斯(Jason Lucas)創(chuàng)建的。他把這個技術(shù)稱作分布式圖表數(shù)據(jù)庫。Stig旨在支持大量互動的和社交網(wǎng)絡(luò)應(yīng)用。這個數(shù)據(jù)商店的架構(gòu)允許進(jìn)行推論性的搜索,允許用戶和應(yīng)用程序查找信息的不同部分的聯(lián)系。由于Stig是用Haskell功能編程語言編寫的,它能夠輕松地把自己的工作量分散到多臺服務(wù)器。

            Stig仍然有一些神秘感,因為它到目前為止還沒有發(fā)布。但是,觀察人士預(yù)測,它適合社交網(wǎng)絡(luò)和其它保持廣泛的數(shù)據(jù)的應(yīng)用。盧卡斯解釋說,社交網(wǎng)絡(luò)的需求從一開始就與其它類型的工作不同,因此將受益于適合它需求的數(shù)據(jù)庫。如果不能升級到行星的規(guī)模,你在這個領(lǐng)域就不能成為一個相關(guān)的服務(wù)。

            Stig目前在Tagged網(wǎng)站的一臺服務(wù)器上運(yùn)行,不過,該公司預(yù)計將把Stig擴(kuò)大應(yīng)用為該公司唯一的數(shù)據(jù)庫。開發(fā)人員原計劃在12月開放這個軟件的源代碼,但是,后來推遲到2012年的某個時候。

            咨詢公司Kelly-McCreary & Associates的語義解決方案設(shè)計師丹·麥克里(Dan McCreary)說,我看到的情況是非常有趣的。他贊揚(yáng)這個數(shù)據(jù)庫的功能語言架構(gòu)。這個架構(gòu)將使這個數(shù)據(jù)庫在多臺服務(wù)器上部署更方便。

            4.Linux Mint

            盡管開源軟件支持者的多年宣傳,Linux從來沒有廣泛應(yīng)用于臺式電腦。但是,一直有一個用戶友好的Linux發(fā)布版作為替代微軟Windows的軟件在使用。在最近幾年,Canonical公司的Ubuntu已經(jīng)完成了自己的任務(wù),盡管日益流行的Linux Min也許會因為更容易使用而超過Ubuntu。

            軟件工程師克萊門特·勒費(fèi)布爾(Clement Lefebvre)在評估了在線論壇中的各種Linux發(fā)布版之后首先創(chuàng)建了Linux Mint。勒費(fèi)布爾在這個工作中產(chǎn)生了在這個理想的發(fā)布版中應(yīng)該有什么功能的想法。就像Canonical為自己非常流行的Ubuntu感謝Debian Linux發(fā)布版一樣,勒費(fèi)布爾把Ubuntu作為Linux Mint的基礎(chǔ)。現(xiàn)在,Linux Mint項目得到了捐獻(xiàn)者的資金、自己網(wǎng)站的廣告收入和來自用戶搜索的收入。最后一項收入是通過與DuckDuckGo建立的一個有爭議的合作實現(xiàn)的。

            Linux Mint是僅需要桌面操作系統(tǒng)而不想了解更多的Linux工作原理的用戶設(shè)計的。這個方法使安裝和運(yùn)行這個軟件非常容易,維護(hù)也不成問題。更勝過Ubuntu的是,Linux Mint強(qiáng)調(diào)輕松的使用性,在新功能證明自己值得使用之前,一般不使用新的功能。

            例如,Linux Mint避開有些爭議的“Unity”桌面界面。Canonical應(yīng)用這個界面更輕松地把Ubuntu移植到移動平臺。相反,Linux Mint堅持使用更知名的和更成熟的Gnome界面。

            事實上,由于Ubuntu的傷害,這種嚴(yán)格堅持可用性的做法也許有助于Linux Mint。Linux Mint稱它的操作系統(tǒng)是全球排名第四位的桌面操作系統(tǒng),僅次于Windows、蘋果Mac和Ubuntu。在過去的一年里,Linux Mint在DistroWatch Linux新聞網(wǎng)站產(chǎn)生的網(wǎng)頁瀏覽量甚至超過了Ubuntu。這個指標(biāo)反映了Linux發(fā)布版的流行程度。毫無疑問,2012年將看到Linux Mint更多的增長。

            5. Gluster

            紅帽能夠給存儲軟件領(lǐng)域帶來它曾給Unix操作系統(tǒng)市場帶來的那種革命性的變化嗎?今年10月,紅帽收購了開源軟件公司Gluster。這家公司制作的開源軟件GlusterFS且文件系統(tǒng)能夠把商品化SATA(串行高級技術(shù)附件)硬盤和NAS(網(wǎng)絡(luò)附加存儲)系統(tǒng)連接到大規(guī)模的可伸縮的存儲池。紅帽計劃使用它占領(lǐng)Linux操作系統(tǒng)市場的方法統(tǒng)治存儲領(lǐng)域。

            據(jù)紅帽CEO吉姆·懷特赫斯特稱,存儲軟件市場每年收入達(dá)40億美元,不過,這不是紅帽對這個技術(shù)感興趣的原因。相反,紅帽感興趣的是找到一種能夠使云遷移更方便的存儲技術(shù)。他說,我們尋找一些開源軟件能夠作為更強(qiáng)大的技術(shù)創(chuàng)新的方式的地方。我們正在尋找一些能夠盈利的地方。在這方面,還沒有其它的解決方案。

            這個軟件已經(jīng)有一些增長勢頭,至少在管理員下載和測試這個軟件方面是如此。在過去的一年里,GlusterFS的下載量增長了300%。在今年11月,這個軟件的下載次數(shù)超過了3.7萬次。

            posted @ 2012-01-04 15:47 小果子 閱讀(777) | 評論 (0)編輯 收藏
            code by flex ,just for fun
            passwordGenerator
             
            posted @ 2011-12-23 10:30 小果子 閱讀(221) | 評論 (0)編輯 收藏
            僅列出標(biāo)題
            共58頁: First 20 21 22 23 24 25 26 27 28 Last 
            欧美日韩中文字幕久久久不卡 | 久久天天躁夜夜躁狠狠| 欧美亚洲国产精品久久| 久久婷婷激情综合色综合俺也去 | 国产伊人久久| 精品伊人久久久| 国产综合久久久久久鬼色| 天天久久狠狠色综合| 久久综合久久美利坚合众国 | 久久人人爽人人爽人人爽 | 伊人久久综合精品无码AV专区| 亚洲女久久久噜噜噜熟女| 四虎国产精品免费久久5151| 亚洲人成无码www久久久| 国产成人综合久久综合| 久久亚洲国产成人精品无码区| 青青草原精品99久久精品66| 色偷偷91久久综合噜噜噜噜| 99久久久精品| 精产国品久久一二三产区区别 | 久久久久无码精品国产| 亚洲伊人久久综合影院| 99久久免费国产精品| 久久久久人妻精品一区二区三区| 欧美国产精品久久高清| 99久久99久久精品国产| 国产V亚洲V天堂无码久久久| 亚洲αv久久久噜噜噜噜噜| 久久中文字幕精品| 人人狠狠综合久久亚洲| 国产精品成人99久久久久 | 久久本道伊人久久| 国内精品伊人久久久久av一坑 | 亚洲国产精品嫩草影院久久| 日韩精品国产自在久久现线拍| 久久精品麻豆日日躁夜夜躁| 99久久精品免费看国产一区二区三区 | 久久91精品国产91久久户| 久久久久久久亚洲Av无码| 亚洲中文精品久久久久久不卡| 久久精品一区二区三区AV|