开发

编辑

必要条件

最好是带模块的,但不是必要条件.

或更高版本,没错,可以在php4或是5下面运行.

技术上来说,数据库不是必需的,但我们设想每个应用都会用到数据库,支持大部分数据库::

3.FirebirdDB2

4.MicrosoftSQLServer

5.Oracle

6.SQLite

7.ODBC

8.ADOdb

准备安装

CakePHP

运行很快并且很容易安装。最小的安装环境就需要一个服务器和一份Cakephp的拷贝就行了。很简单的。然而这份文档主要对如何在apache服务器下进行安装进行说明,(因为apache是当前最流行的服务器)。你可以配置cakephp让它在LightHTTPD或者MicrosoftIIS服务器下运行。

1.下载一份CakePHP

2.配置你的服务器让它支持php(如果必要的话)

3.检查文件权限

安装

安装CakePHP可以简单到直接把它丢入你网页伺服机的主目录中,也可以复杂并如你希望般的弹性.在这部分我们将含括三种安装方式:开发模式,实际应用与高级安装.

1.开发模式:简单又快速,URLs中将包含CakePHP的安装目录,并不十分安全.

2.实际应用:必须调试伺服机之主目录,简洁的URLs,非常安全.

3.高级安装:通过一些调试,能让你把CakePHP主程式放在指定的地方,更可能让不同的CakePHP分享同样的CakePHP主程式.

配置

配置CakePHP应用程序是一件很有意思的事情。在你安装完CakePHP之后,创建一个基本的web应用程序只需要你配置一下数据库

然而,还有很多其他可选的配置用于适用CakePHP更高级的一些特性。你可以通过继承的方法为CakePHP核心增加功能、配置你自己的路由,或者定义你自己的映射。

控制器(Controllers)

控制器是用来控制逻辑的。通常,控制器会来控制一个独立的模型。举例,如果你要建立一个在线的面包店,你要有RecipesController和IngredientsController这两个控制器来控制食谱(Recipe)和配料(Ingredient)。在CakePHP会以复数的方式命名控制器。

RecipesController控制Recipe模型,ProductsController控制Product模型,依此类推。

一般我们所创建的控制类都继承CakePHP的AppController类。AppController继承自Controller类AppController在/app/app_controller.php文件里定义,它包含很多函数,你的应用程序里面所有的控制器类都要共享这些函数。Appcontroller类的父类Controller类在CakePHP标准库中定义cakephp。

控制器里的函数通常都会跟动作(action)关联。Action是用来显示视图(View)的控制器的函数。一个action就是控制器的一个单独的函数。

当一个URL请求匹配和控制器的动作匹配的时候,CakePHP的分发器调用相应的动作完成这个请求。

组件(Components)

组件是封装了一定逻辑处理的,可以在控制器间共享使用的包。当你发现你总是需要在不同的控制器间来回拷贝代码的时候,也许就是时候把这些可以共有的代码打个包,写成组件了。

CakePHP也提供了很多很好用的内置组件:

Security、Sessions、Accesscontrollists、Emails、Cookies、Authentication、Requesthandling

模型(Models)

模型是数据的表现,在CakePHP中被用来进行数据的访问。通常情况下一个模型对应一张数据库表,不过也可以用来访问其他的数据容器,比如文件,LDAP记录,iCal事件或者CSV文件的行。

一个模型可以与其他的模型建立相互的关系。比如,一张食谱可能会有一位作者作为其要素之一。

行为(Behaviors)

模块的行为是一种用来组织CakePHP模块里定义的某些功能的方法.它使我们可以把那些不是与模块直接相关但又需要的逻辑独立出来。通过提供一种简单但强大的方法来扩展模块,行为(Behaviors)允许我们通过简单地定义一个类变量来加入方法。这就是行为(Behaviors)如何允许模块去掉所有额外的体重,比如可能不是他们正在建模的商业合同的一部分,或是另一个模块才需要的并且可以被推测出来的部分。

举个例子,比如一个模块,它允许我们取得数据库里用来存关于树的信息结构数据。在一个树里删除、新增和迁移结点并不像删除、插入和修改表中的一行数据那样简单。很多个记录可能需要被更新随着结点的移动。相比在每个模块中建立这些树操作的方法,我们可以简单地告诉模块去使用TreeBehavior,或者更正式地来说,我们告诉我们的模块,让它们像一个树一样来行为。这就是所谓的追加一个行为到模块。只需要用一行代码,我们的CakePHP模块就获得了一整套的方法,从而使它可以根据它的结构来互相操作。

数据源

数据源是连接模型和其所代表的数据之间的桥梁。多数情况下,数据被存储在像MySQL,PostgreSQL,或者MSSQL等关系数据库中。CakePHP本身集成了大部分的既有数据库的特定数据源(参考cake/libs/model/datasources/dbo/中的dbo_*等类库文件),为了方便把这些数据源在此做个简单的列表:

1.dbo_mssql.php

2.dbo_mysql.php

3.dbo_mysqli.php

4.dbo_oracle.php

5.dbo_postgres.php

6.dbo_sqlite.php

视图(View)

CakePHP的视图层是展现给用户看到的部分。多数情况下视图应该是供浏览器使用的(X)HTML文档,但也可能是提供给Flash组件的AMF数据,或者通过SOAP响应服务器端应用程序,甚至发送给用户的CSV文件。

CakePHP视图使用PHP文本编写,默认扩展名.ctp(意为CakePHPTemplate)。这些文件涵盖了从控制器接收数据并按指定格式呈现给用户的所有表现逻辑。

视图文件存放在/app/views/目录下,在以控制器名称命名的文件夹中,以正访问的action名称命名的文件。例如,Products控制器中有一个view()action,那么与之对应的视图文件应该就是/app/views/products/view.ctp。

助手(Helper)

助手(Helper)是类似组件的类,用于你的应用程序的表现层里。它们包括了一些视图(view),元素(element)或布局(layout)共用的表现层逻辑。

脚手架(Scaffolding)

应用程序脚手架是一种允许开发人员快速定义和创建查、删、改、增程序(CRUD)的技术。CakePHP的脚手架还允许开发人员定义对象之间如何相互联合,以及创建和取消它们之间的关联。

创建脚手架所需要的全部只不过是一个model以及它的控制器。只要在控制器中设置了$scaffold变量,基本上就搞定了。

CakePHP的脚手架那是相当的酷。它可以让你在几分钟之内创建一个基本的CRUD程序出来。如此之酷你可能会将其用于产品环境中去。尽管我们也认为它很酷,但请你一定要认识到脚手架嘛。。。嗯。。。始终只是个脚手架。它拥有一个大致的结构,这样可以让你在项目初期能够快速起步。这并不意味着它很灵活,而是说它只是起步时的一个临时途径。当你发现需要自定义逻辑和视图的时候,也就是该拆除脚手架开始写代码的时候了。CakePHP的Bake控制台,在下一节我们会讲到,是非常重要的下一步:它能够生成多数当前脚手架功能相同的代码。

脚手架在WEB程序早期的时候是一个不错的选择。数据库设计初期会经常改动,在设计过程早期这是相当正常的现象。但有个负面作用:WEB开发人员讨厌创建了表单但却看不到实际的应用。为了减轻开发人员的压力,CakePHP已经内置了脚手架。脚手架分析数据表,并且创建标准的带添加、删除和编辑按钮的列表,编辑用的标准表单以及检视数据库单条记录的视图。

插件(Plugins)

CakePHP允许将创建的控制器、模型和视图联合起来打包发布,作为其它CakePHP程序可以使用的插件。在应用程序中有比较棒的用户管理模块?或者简单的博客?抑或webservices模块?将它打包成插件就可以在其它程序中使用了。

插件与安装它的应用程序之间最主要的联系是应用程序的配置(如数据库连接等等)。否则,它只会对它自己的领空生效,就像一个独立的应用程序一样。

cakephp视图用php文件,cakephp相关推荐

  1. cakephp视图用php文件,CakePHP - 扩展视图( Extending Views)

    CakePHP - 扩展视图( Extending Views) 很多时候,在制作网页时,我们希望在其他页面中重复某些页面. CakePHP具有这样的功能,可以在另一个视图中扩展视图,为此,我们不需要 ...

  2. cakephp视图用php文件,CakePHP的视图

    在MVC中,字母"V"就是视图(View).视图负责发送基于请求的输出给用户. 视图类(View Classes)是加快开发过程的有效方式. 视图模板 CakePHP中的视图模板文 ...

  3. cakephp视图用php文件,cakephp使用笔记

    1.cakephp,一个controller里面可以使用多个model,用$uses来声明 public $uses = array("Question", "Answe ...

  4. cakephp视图用php文件,CakePHP-视图

    CakePHP-视图 MVC中的字母" V"表示视图.视图负责根据请求将输出发送给用户.视图类是加快开发过程的强大方法. 查看模板 CakePHP的"查看模板" ...

  5. 2021-07-18 三种视图的dicom文件的生成

    根据截断面的dicom文件生成三种视图的dicom文件 由于给出的dicom文件只有阶段面的展示,而我们需要完成横断面.矢状面.冠状面三种视图的展示.在js方面缺少对dicom文件进行处理的库,因此需 ...

  6. oracle 跨服务器推送视图_Oracle11g的v$diag_info视图获得控制文件转储文件名及位置...

    概述 今天主要介绍下Oracle的v$diag_info视图,这个视图也是11g的新特性之一.下面先介绍下11g新引入的ADR特性. 一.11g的ADR 在11g中引入了自动诊断资料档案库(Autom ...

  7. 更改计算机浏览视图,瞬间变得高大上,教你把CAD图纸的查看模式改成三维视图模式-dwg文件查看器...

    我相信不少刚接触CAD文件的小伙伴,都不知道怎么将CAD图纸文件打开,这是因为CAD图纸文件是需要接触专用的CAD看图软件才能够打开的,那么什么CAD看图软件好用?如何在电脑上安装CAD看图软件,打开 ...

  8. 视图、索引文件的应用

    一.实验目的 1.掌握SQL Server 2019中的视图创建及删除的方法. 2.加深对视图和SQL Server 2019图表作用的理解. 3. 掌握创建主键(PRIMARY KEY)约束的基本操 ...

  9. android自定义视图添加布局文件,android – 添加自定义视图作为XML布局的视图

    方案如下: 我有一个活动RunTrainingWorkoutsView,它使用XML布局_run_workout.xml_,其中一些标签由CountDownTimer更新.工作正常- 现在,除了每秒通 ...

最新文章

  1. 中止取消ajax请求,IE7下的bug解决
  2. Windows dos 在某个目录下的所有文件中查找包含某个字符串的文件
  3. 可爱妈妈对我的\情色\教育
  4. WebRTC Audio Encoder/Decoder Factory 的实现
  5. java获取mp3的时长和播放mp3文件
  6. 全国计算机等级考试题库二级C操作题100套(第09套)
  7. LeetCode 2068. 检查两个字符串是否几乎相等
  8. 如何把nas的功能效果最大化?
  9. mysql 修改字段长度
  10. 做运动(Dijkstra+并查集+MST)
  11. 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
  12. XCode 动态库未签名问题的解决
  13. Android你不知道的svc命令----解析adb shell svc源码
  14. 推荐系统序列化建模总结
  15. python系统运维工程师_系统运维工程师的工作职责
  16. golang 微信支付介绍
  17. CMake Error: The current CMakeCache.txt directory is different than the other
  18. 清华大学计算机系教授武汉理工大学,武汉理工大学
  19. java做RPG小游戏
  20. ADDS:使用 PowerShell 创建 OU 结构

热门文章

  1. 两级式光伏并网逆变器,DCDC环节采用boost电路,通过增量电导法实现光伏最大功率跟踪MPPT
  2. 如何通过短信转发在iPad和Mac上发送和接收短信
  3. CASIA Gait Database--Dataset B详细介绍
  4. 大数据学习中应该确立怎样的学习目标
  5. 多电脑共享键鼠——sharemouse 2021-08-21
  6. 默孚龙导电滑环在比亚迪垂直循环式充电站中的应用
  7. TDOA算法的matlab仿真
  8. 第十二届闽台陈靖姑民俗文化旅游节在福州启动
  9. 【IT项目管理】第6章 习题
  10. AUTODESK_TOXIK_V2008