作者 主題: [PHP] 好用 Web Framework : CodeIgniter 安裝教學  (閱讀 5090 次)

0 會員 與 1 訪客 正在閱讀本文。

appleboy

  • 活潑的大學生
  • ***
  • 文章數: 224
    • 檢視個人資料
    • 小惡魔筆記
好用 Web Framework : CodeIgniter 安裝教學

最近都在 survey 一堆 PHP Web Framework,自己想學一套可以馬上上手的,其實因為目前在 PHP的開發上面講求速度,以及程式的可維護性,雖然我自己有一套自己的開發方法,包含包好的 SQL Class 以及上傳模組,不過還是覺得熟悉一套MVC 架構的寫法,將來維護或者是團隊合作方面會比較好分工,在小專案上面還可以自己來,但是大型專案就必須靠 MVC Framework了,畢竟一個人寫程式,永遠比不上團隊合作,紀錄一下最近找到的一些網路比較多人用的 FrameWork:
上面這幾套,我目前用過 Zend Framework 跟 CakePHP,這兩套在文件方面都非常多,以台灣的開發者相當推崇這兩套,至於好不好上手,看個人的狀況了,在我用一個禮拜開發 Zend AUTH 跟 login 還有 Google Calendar API,可以參考 Zend Framework Tag,那這不是重點,這次要介紹 Web Framework : CodeIgniter,今天花了一些時間安裝了 CodeIgniter,來紀錄安裝心得,包含 .htaceess 設定,css 路徑的解決,那也可以參考這一篇中文安裝,大陸那邊已經有了簡體版的官方網站,不過英文官方文件就已經寫的很清楚了,大家可以閱讀英文就可以了。
安裝方法如下:首先下載最新版 1.7.1版本,解壓縮之後,可以看到兩個資料夾 system 跟 user_guide 還有一個 index.php 檔案,user_guide這裡面就跟網站上的 Doc 是一樣的,方便您離線閱讀文件,那重點只剩下 system 跟 index.php了,其實如果都沒有改的話,只要瀏覽器打入 http://網址,這樣就可以看到 welcome 的畫面了



這樣其實很容易吧,您一定很想知道怎麼會預設讀這個檔案呢,那就是在 system/application/config 裡面的 routes.php 裡面設定的,找到

代碼: [選擇]
$route['default_controller'] = "welcome";這就是預設的 Controller,所以 index.php 會先去載入 welcome.php 這隻檔案,放在 system/application/controllers/welcome.php

代碼: [選擇]
<?php



class Welcome extends Controller {



    function 
Welcome()

    {

        
parent::Controller();   

    }

    

    function 
index()

    {

        
$this->load->view(&#39;welcome_message&#39;);

    
}

}



/* End of file welcome.php */

/* Location: ./system/application/controllers/welcome.php */
注意 Conrtroller 第一個字母要大寫喔,所以是寫 Welcome,網址只需要打 http://localhost/CodeIgniter/ 這樣就可以看到畫面,那也可以打入http://localhost/CodeIgniter/index.php/welcome ,會看到同樣的畫面,我們可以利用mod_rewrite 方式把 index.php 拿掉,只要在根目錄新增 .htaccess 檔案,寫入底下程式碼:
代碼: [選擇]
RewriteEngine on

RewriteBase /CodeIgniter/

RewriteCond $1 !^(index\.php|css|flash|images|img|includes|js|language|robots\.txt)

RewriteRule ^(.*)$ index.php/$1 [L]

首先因為我的子目錄是 CodeIgniter,所以必須設定 RewriteBase,如果你是根目錄,那就取消這行,RewriteCond這邊如果網站有 images 或者 css 檔案,請加上去,不然所有檔案都被導入到 index.php,這樣網站圖片 css效果都不會出來,可以參考 wiki 或者是論壇這篇文章,接下來自己寫一個 Blog.php 的 controller 檔案,檔內容如下:
代碼: [選擇]
<?php

class Vbs extends Controller {



  function 
__construct()

  {

      
parent::Controller();

  }

    

  function 
_remap($method)

  {

    if (
$method == &#39;comments&#39;)

    
{

      
$this->$method();

    }

    else

    {

      
$this->header();

      
$this->footer();

    }

  }

  

  function 
header()

  {

    
$this->load->helper(&#39;url&#39;);

    
$data = array(

      &
#39;sitename&#39; => &#39;VBS禾唐-VBS安穩煞車器 行車更安全&#39;,

      
&#39;page_title&#39; => &#39;首頁&#39;

    
);    

    
$this->load->view(&#39;header&#39;,$data);

  

  
}

    

  function 
footer()

  {

    
$this->load->view(&#39;footer&#39;);

  
}

}

?>

其中 $this->load->helper(’url’); 是抓取您設定的 url 網址
代碼: [選擇]
/*

* 這會去抓取 application/config/config.php 裡面的 $config['base_url'] = "http://localhost/CodeIgniter/";

*/

$this->load->helper('url');

目前還在摸索中,如果還有心得,會在繼續追加。





Related View

歡迎來到 CodeIgniter 繁體中文討論區
My Blog:小惡魔 - 電腦技術 - 生活日記 - 美食介紹 - AppleBOY