CakePHP架構入門_PHP教程

來源:互聯網
上載者:User
  (一)簡介

  本文主要介紹CakePHP架構,及怎樣安裝配置使用此架構入門進行開發。

  (二)需求(1)瞭解基本PHP 代碼。(2)已配置Apache+MySQL+PHP的開發環境。

  (三)本文(1) CakePHP介紹

  CakePHP是一個基於PHP,免費且開源的MVC架構。它相對其它一些PHP架構(如zend framework)更簡單,可以使使用著更快速且不失靈活性地建立網路應用程式。因此對於普通初學者都能容易上手。

  CakePHP有以下特點:

  擁有既友好又活躍的社區

  靈活的MIT 許可證

  相容 PHP4 和 PHP5

  資料庫互動運用了 CRUD

  應用程式腳手架

  代碼自動產生(代碼產生器)

  MVC 體系架構

  清晰,乾淨的高度自訂的URLs和路由請求分發器

  內建validation驗證

  快速靈活的模板機制 (PHP syntax, with helpers)

  擁有AJAX, JavaScript, HTML表單和更多的視圖助手工具

  郵件、Cookie、安全、會話(Session),和請求處理的組件

  靈活的ACL存取控制機制

  資料清理

  靈活的視圖緩衝Caching

  本地化

  可在任何子目錄裡工作,很少甚至不需要更改任何 Apache 相關配置

  (2) 配置開發

  從http://cakephp.org/下載 CakePHP,當前的最新版本是:1.2.3.8166

  下載後解壓到伺服器的根目錄下,如:/wwwRoot/First_App,同時可以改變根目錄直接指向First_AppAppWebRoot,即如:DocumentRoot "D:PHPwwwRootFirst_Appappwebroot"

  重啟Apache服務。瀏覽:http://localhost/

  如果看到和此相同的頁面,說明你的Apache服務配置正確。同時可以看到頁面上的4個提示資訊,黃色的是你必須配置的。

  配置如下:

  1。在First_AppappconfigCore.php找到 Configure::write('Security.salt', 'DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi');

  將後面的鍵隨便改成40個左右的任一字元串就可以了。

  2。將檔案First_Appappconfigdatabase.php.default的檔案名稱改為:database.php,更改裡面的資料庫連接,可刪除test的配置,最後的配置如下:

  class DATABASE_CONFIG {

  var $default = array(

  'driver' => 'mysql',

  'persistent' => false,

  'host' => 'localhost',

  'login' => 'root',

  'password' => '123',

  'database' => 'cake',

  'prefix' => '',

  );

  }

  3.如果First_Appapptmp不是可寫,還需將改為可寫。

  更改後儲存,再次瀏覽http://localhost/,你會發現上面的黃色提示全變成綠色。

  4.路由配置,此才是整個配置的關鍵保證下面能否正確進行的關鍵。

  路由用來映射URL和控制器的action

  URL 樣式的預設路由:

  http://example.com/controller/action/param1/param2/param3

  修改httpd.conf開啟mod_rewrite

  1去掉#LoadModule rewrite_module modules/mod_rewrite.so前的#號

  2同時將AllowOverride none 改為AllowOverride all

  如:

  

  Options FollowSymLinks

  AllowOverride all

  

  上面是將所有網站目錄都設為Allowoverride all,如果為all,apache服務將.htaccess來控制路由,設為none,將不予處理目錄下.htaccess中的路由

  可以指定單獨目錄進行路由,需在加入要指定的目錄。如:

  

  AllowOverride all

  

  更改httpd.conf後需重啟Apache服務。

  (3) 使用架構

  如果配置正確後,就可以加入自己的代碼。

  3.1 建立資料庫表

  Create Table Items

  (

  id int (11) unsigned auto_increment,

  name varchar(200),

  text varchar(200),

  CreateTime timestamp default current_timeStamp,

  primary key (id)

  )

  insert into Items(name,text) values('Item 1','Item 1 content');

  3.2建立Model:First_AppappmodelsItem.php

  

  create Item extends AppModel{

  var $name = 'Item';

  }

  ?>

  3.3建立Controller:First_AppappcontrollersItems_Controller.php

  

  class ItemsController extends AppController{

  var $name = 'Items';

  var $scaffold;

  }

  ?>

  3.4瀏覽:http://localhost/Items,後的結果如下:

http://www.bkjia.com/PHPjc/752066.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/752066.htmlTechArticle(一)簡介 本文主要介紹CakePHP架構,及怎樣安裝配置使用此架構入門進行開發。 (二)需求(1)瞭解基本PHP 代碼。(2)已配置Apache+MySQL+PHP的開發環...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.