Time of Update: 2017-01-21
和Java Swing中類似Yii Framework 中的Layout 也允許嵌套,這是通過CContentDecorator來實現的,不過代碼中並不需要 直接使用CContentDecorator ,而是在定義layout使用$this->beginContent('path/to/view');// ... content to be decorated$this->endContent();其中view 為另外一個布局。本例定義四個Layout,一個嵌套一個:
Time of Update: 2017-01-21
CClipWidget提供了類似錄製“宏”的功能,定義在CClipWidget的init和run之間的內容可以存放在Controller的Clip變數中 ,然後重新回放到任意其它位置。CClipWidget封裝的是CBaseController的beginClip和 endClip,CBaseController的 beginClip和 endClip的基本用法如下:首先定義Clip$this->beginClip('clipID');// ... display the
Time of Update: 2017-01-21
前面在介紹Yii Framework 開發教程(7) 使用CHtml 建立Form和Yii Framework 開發教程(8) 使用FormModel 已經對 CActiveForm做了簡要的介紹。過幾天就是聖誕節了,這裡協助聖誕老人做個調查表,調查每個人希望得到的聖誕節禮物和聖誕大餐想吃的食品)。這裡共用一部分代碼,做為後續例子的架構,基本上是複製Hello World的例子,添加了一個空的DataModel,使用預設的Controller(SiteController)和預設的Action(
Time of Update: 2017-01-21
在介紹Yii內建UI組件之前,先介紹一下如何自訂群組件,這樣也有助於理解CWidget的用法,自訂群組件就是重載 CWidget 的init() 和 run() 方法。class MyWidget extends CWidget{public function init(){// 此方法會被 CController::beginWidget() 調用}public function run(){// 此方法會被 CController::endWidget()
Time of Update: 2017-01-21
1.php中用smarty模板產生的html在瀏覽器中頂部有一空行. 2.用firedebug發現 meta和link標記在body標籤裡. 本機上wmap運行沒事, 送到遠程伺服器上是IASP的服務, 會出現上述bug. 看了下源檔案, 文本一樣的. 但儲存時提示編碼問題.估計是utf-8問題了. 在網上找了下, 是utf-8 BOM問題. 解決方案:
Time of Update: 2017-01-21
和通常的應用程式開發架構一樣,Yii Framework也提供了一組UI小工具(CWidget)來協助程式員設計使用者介面,小組是 CWidget 或其子類的執行個體.它是一個主要用於表現資料的組件.小組通常內嵌於一個視圖來產生一些複雜而獨立的使用者介面.例如, 一個日曆小物件可用於渲染一個複雜的日曆介面.小工具使使用者介面更加可複用.我們可以按如下視圖指令碼來使用一個小 物件:beginWidget('path.to.WidgetClass');
Time of Update: 2017-01-21
通過前面的學習,我們瞭解了Yii Web應用的基本組成部分,也會編寫像Hangman猜單詞遊戲這樣簡單的應用。在第一個例子 Yii Framework 開發簡明教程(1) 第一個應用Hello World 我們介紹了Yii Web應用採用MVC模型,也說明了本教程目的是通過不 同的視角(主要是通過開發Windows應用C++,C#程式員的角度)協助Windows案頭應用或ASP.Net程式員較快的掌握PHP Yii
Time of Update: 2017-01-21
在建立Yii 應用的MVC做的View時,可以直接使用HTML語言直接構造整頁模式,Yii 也提供了幾個協助(helper)類簡化視圖 編寫。例如, 要建立一個文本輸入欄位,我們可以調用 CHtml::textField(); 要建立一個下拉式清單,則調用 CHtml::dropDownList()。在前面的Hangman例子的幾個View就是使用CHtml來建立View的。資訊: 你可能想知道使用協助 類的好處,如果它們所需的代碼量和直接寫純HTML的代碼量相當的話。 答案就協助類可以提供比
Time of Update: 2017-01-21
在Hangman中定義的GameController使用到一些屬性word,可以使用$this->word 的格式來讀寫這個屬性,但實際上在 GameController對應到這個屬性的方法為/*** @return string the word to be guessed. This value is persistent* during the whole game session.*/public function getWord(){return
Time of Update: 2017-01-21
在上一篇Yii Framework 開發簡明教程(4) Hangman 猜單詞遊戲執行個體略去了幾個方面的問題,一是設定檔main.php 的 URLManager,二是Controller的基類CComponent ,三是定義View使用的CHtml協助類。本篇戰開介紹URLManager,URL管理。return array(...'components'=>array('urlManager'=>array('urlFormat'
Time of Update: 2017-01-21
有了前面“Hello,World”的例子和對Yii Framework Web應用基礎的介紹,可以開始介紹一個簡單而相對而有比較完整的 Web應用-Hangman(猜單詞遊戲),這個例子是隨Yii 開發包發布的。通過這個例子可以瞭解開發Yii應用的基本步驟.說 起“Hangman”,讓我想起80年代末期高中時在CPC464電腦上完過的“猜單詞遊戲”-Hangman,每猜錯一次,就把一個小人離 絞刑架前進一步。當時DOS才剛剛出來:-)。開發一個Web應用,首先是進行需求分析,這個不在本教程之內,
Time of Update: 2017-01-21
在開發應用的過程中,調試也是非常重要的一個環節,除了IDE支援的即時調試(如VS.PHP或IDE支援的調試功能),給Web應 用添加適當的調試資訊也是非常有用的一個方法,開發過Java或.Net 應用的對log4XX都不陌生,Yii Framework中也提供了類似 的Log功能, Yii::log,它是作為CWebApplication一個內建的組件出現的。可以通過設定檔來配置(Yii中配置通常為 protected/config/main.php)。上篇文章Yii Framework
Time of Update: 2017-01-21
有了前面的“Hello,World”, Yii應用開發似乎很容易,別這麼快下結論:-),想起多年以前剛開始使用MFC開發時,寫完 第一個Hello,World之後,還是覺得無從下手,不知道怎麼開始寫MFC應用,這是因為MFC提供了大量的類庫,如果對MFC應用程 序架構和其提供的主要類庫不事先瞭解的話,基本上就沒辦法寫應用,學習Yii Framework,也要先瞭解一下組成Yii應用的幾個
Time of Update: 2017-01-21
Yii Framework 教程可以參見官方中文文檔 ,那麼為什麼還要寫這個開發教程呢? 本教程目的是通過不同的視角(主要是通過開發Windows應用C++,C#程式員的角度)協助Windows 案頭應用或ASP.NET程式員較快的掌握PHPYii Framework應用程式架構。 使用PHP開發Web應用的一個重要好處是可以應用於各種作業系統(Unix,Windows,Mac
Time of Update: 2017-01-20
第一種方法:1,第一種方法:利用使用最廣泛,最方便的Google api技術實現;2,<?php//封裝產生二維碼圖片的函數(方法)/* 利用google api產生二維碼圖片 $content:二維碼內容參數$size:產生二維碼的尺寸,寬度和高度的值$lev:選擇性參數,錯誤修正等級$margin:產生的二維碼離邊框的距離*/function create_erweima($content, $size = '100', $lev = 'L',
Time of Update: 2017-01-20
Bootstrap是Twitter推出的一個開源的用於前端開發的工具包。它由Twitter的設計師Mark Otto和Jacob Thornton合作開發,是一個CSS/HTML架構。Bootstrap提供了優雅的HTML和CSS規範,它即是由動態CSS語言Less寫成。Bootstrap一經推出後頗受歡迎,一直是GitHub上的熱門開源項目,包括NASA的MSNBC(微軟全國廣播公司)的Breaking
Time of Update: 2017-01-20
讓 AddPlayer 視窗動起來現在,我們先忽略“Game”行,只考慮使用者輸入的玩家名稱。當使用者觸摸 Cancel 按鈕,視窗會關閉,使用者輸入的資料都將丟失。這部分是 OK 的。在委派物件(Players 視窗)收到“didcancel”訊息時,會簡單地關閉 AddPlayer 視窗。當使用者觸摸 done 按鈕時,我們應該建立新的 Player 對象並設定它的屬性。然後告訴委派物件我們添加了新的玩家,他應該重新整理介面。因此,
Time of Update: 2017-01-20
Segues 介紹是時候在我們的故事板中加入更多的 ViewController 了。我們將建立一個情境以便使用者添加新的玩家到程式中。拖一個 BarButtonItem 到 Players 情境的導覽列右端。通過屬性面板將它的Identifier 改為 Add,這樣它就成為一個標準的 + 號按鈕。當你點擊這個按鈕我們將彈出新的強制回應視窗,你可以在其中輸入新玩家的資訊。拖一個 TableViewController 到畫布中,放在Players
Time of Update: 2017-01-20
模板 cells注意到當你加入 tableViewController 後,Xcode 會發出警告了嗎? “Unsupported Configuration: Prototypetable cells must have reuse identifiers”,當加入一個TableViewController 到故事板後,Xcode 預設會使用一種 prototype cells 的儲存格(模板cells)。但我們並沒有配置它,因此會有這個警告。模板 cells
Time of Update: 2017-01-20
原文: http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1故事板是 iOS5 中激動人心的新特性,將極大節省你編寫使用者介面的時間。要想明白什麼是故事板,請看。這同時也是本教程將建立的故事板:你也許不知道這個程式是幹什麼的,但它的主要螢幕介面及每個螢幕視窗之間的關係則通過這張圖一目瞭然了。這就是使用故事板的好處。如果你的 app