> php教程 > php手册 > CakePHP架构入门

CakePHP架构入门

WBOY
풀어 주다: 2016-06-13 09:39:27
원래의
1400명이 탐색했습니다.

   (一)简介

  本文主要介绍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,后的结果如下:

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿