1、下载cakephp框架代码

github地址

https://github.com/cakephp/cakephp/tree/2.x

git clone到本地环境

//这里因为我练习的是2.x版本,所以clone的是2.x分支
git clone -b 2.x https://github.com/cakephp/cakephp.git
2、下载完成之后需要对数据库配置文件进行修改

框架默认的为database.php.default需要复制一份放到当前目录的database.php中

对数据库配置进行修改

class DATABASE_CONFIG {public $default = array('datasource' => 'Database/Mysql','persistent' => false,'host' => 'localhost','login' => 'root','password' => 'root','database' => 'wyq','prefix' => '',//'encoding' => 'utf8',);public $test = array('datasource' => 'Database/Mysql','persistent' => false,'host' => 'localhost','login' => 'root','password' => 'root','database' => 'wyq','prefix' => '',//'encoding' => 'utf8',);
}
3、配置本地环境

cakephp的入口文件在 cakephp/app/wwwroot目录,在本机环境调试成功后访问网站显示,这里我用的是phpstudy

配置完成之后访问网站cakephp.com显示页面,网站就搭建成功了

4、创建模型

首先创建模型User.php 这里只需要创建一个User类在app/Model目录下创建该User类

<?php
/*** Created by PhpStorm.* User: wyq* Date: 2021/7/7* Time: 16:30*/class User extends AppModel
{}
5、创建控制器

然后创建Usercontroller.php控制器代码

<?php
/*** Created by PhpStorm.* User: wyq* Date: 2021/7/7* Time: 16:32*/class UserController extends AppController
{public $helpers =array('Html', 'Form');public function index(){//调用模型方法查找user表中的全部数据$params = $this->User->find('all');//参数绑定、页面渲染$this->set('params',$params);}
}
6、页面布局修改

这里cakephp2.x有自己默认的系统布局在app/view/Layouts/default.ctp

<?php
$cakeDescription = __d('cake_dev', 'CakePHP: the rapid development php framework');
$cakeVersion = __d('cake_dev', 'CakePHP %s', Configure::version())
?>
<!DOCTYPE html>
<html>
<head><?php echo $this->Html->charset(); ?><title><?php echo $cakeDescription ?>:<?php echo $this->fetch('title'); ?></title><?phpecho $this->Html->meta('icon');echo $this->Html->css('cake.generic');echo $this->fetch('meta');echo $this->fetch('css');echo $this->fetch('script');?>
</head>
<body><div id="container">//模板的头部<div id="header"><h1><?php echo $this->Html->link($cakeDescription, 'https://cakephp.org'); ?></h1></div>//自定义内容<div id="content"><?php echo $this->Flash->render(); ?><?php echo $this->fetch('content'); ?></div>//页脚<div id="footer"><?php echo $this->Html->link($this->Html->image('cake.power.gif', array('alt' => $cakeDescription, 'border' => '0')),'https://cakephp.org/',array('target' => '_blank', 'escape' => false, 'id' => 'cake-powered'));?>//cakephp版本<p><?php echo $cakeVersion; ?></p></div></div>//输出sql语句<?php echo $this->element('sql_dump'); ?>
</body>
</html>

在这里我将模板换成了layui的后台管理页面代码如下

<?php
$cakeDescription = __d('cake_dev', 'CakePHP: the rapid development php framework');
$cakeVersion = __d('cake_dev', 'CakePHP %s', Configure::version())
?>
<!DOCTYPE html>
<html>
<head><?php echo $this->Html->charset(); ?><title><?php echo $cakeDescription ?>:<?php echo $this->fetch('title'); ?></title><link rel="stylesheet" href="/css/layui.css"><!-- 最新版本的 Bootstrap 核心 CSS 文件 --><link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin="anonymous">
</head><body class="layui-layout-body">
<div class="layui-layout layui-layout-admin">//头部<div class="layui-header"><div class="layui-logo">layui 后台布局</div><!-- 头部区域(可配合layui已有的水平导航) --><ul class="layui-nav layui-layout-left"><li class="layui-nav-item"><a href="">控制台</a></li><li class="layui-nav-item"><a href="">商品管理</a></li><li class="layui-nav-item"><a href="">用户</a></li><li class="layui-nav-item"><a href="javascript:;">其它系统</a><dl class="layui-nav-child"><dd><a href="">邮件管理</a></dd><dd><a href="">消息管理</a></dd><dd><a href="">授权管理</a></dd></dl></li></ul><ul class="layui-nav layui-layout-right"><li class="layui-nav-item"><a href="javascript:;"><img src="http://t.cn/RCzsdCq" class="layui-nav-img">贤心</a><dl class="layui-nav-child"><dd><a href="">基本资料</a></dd><dd><a href="">安全设置</a></dd></dl></li><li class="layui-nav-item"><a href="">退了</a></li></ul></div>//左边的导航栏<div class="layui-side layui-bg-black"><div class="layui-side-scroll"><!-- 左侧导航区域(可配合layui已有的垂直导航) --><ul class="layui-nav layui-nav-tree"  lay-filter="test"><li class="layui-nav-item layui-nav-itemed"><a class="" href="javascript:;">所有商品</a><dl class="layui-nav-child"><dd><a href="javascript:;">列表一</a></dd><dd><a href="javascript:;">列表二</a></dd><dd><a href="javascript:;">列表三</a></dd><dd><a href="">超链接</a></dd></dl></li><li class="layui-nav-item"><a href="javascript:;">解决方案</a><dl class="layui-nav-child"><dd><a href="javascript:;">列表一</a></dd><dd><a href="javascript:;">列表二</a></dd><dd><a href="">超链接</a></dd></dl></li><li class="layui-nav-item"><a href="">云市场</a></li><li class="layui-nav-item"><a href="">发布商品</a></li></ul></div></div>//主题自定义内容<div id="content" class="layui-body" style="padding: 15px;margin-top: 60px;"><?php echo $this->Flash->render(); ?><?php echo $this->fetch('content'); ?></div></div>
</body>
</html>

将模板布局修改完成之后可以编写user的视图代码,在app/view下创建一个user目录,在里面创建一个index.ctp文件,名称和控制器方法同名。代码如下

 <table class="table table-striped"><tr><th>姓名</th><th>密码</th></tr><?php foreach($params as $v): ?><tr><td><?=$v['User']['name']?></td><td><?=$v['User']['password']?></td></tr><?php endforeach; ?></table>
页面效果展示:

cakephp部署及实例操作相关推荐

  1. 源端RAC数据库删除实例操作时GoldenGate的运维流程

    文章背景 周六下午突然接到一个颇为头疼的任务--尽快为某客户提供一个 GoldenGate 操作方案,大体背景如下: 客户的生产环境是 Oracle 11GR2 的三节点的 RAC ,上面部署了两套  ...

  2. jar k8s 自己的 部署_微服务架构 - 离线部署k8s平台并部署测试实例

    一般在公司部署或者真实环境部署k8s平台,很有可能是内网环境,也即意味着是无法连接互联网的环境,这时就需要离线部署k8s平台.在此整理离线部署k8s的步骤,分享给大家,有什么不足之处,欢迎指正. 1. ...

  3. countif和sum套用_if函数嵌套countif、sumif函数实例操作详解 你需要学习了

    excel中if函数嵌套countif函数实例操作详解,需要了解if函数.countif函数.sumif函数字符串引用方式,isblank函数 操作方法 01 用扫描枪连接excel后将自动将货物名称 ...

  4. java hashmap实例,关于java中的HashMap的实例操作

    HashMap简介: 1.以(键,值)对存储数据. 2.不允许有重复的键,但允许有重复的值. 3.不同步(多个线程可以同时访问) 相关视频教程推荐:java在线学习 实例演示如下: 1.添加 Hash ...

  5. 搭建: canal部署与实例运行

    搭建: canal部署与实例运行 数据库读log同步用 详见下面 查看全文 http://www.taodudu.cc/news/show-1081776.html 相关文章: idea插件开发(01 ...

  6. 织梦数据库改mysql前缀_织梦快速批量修改MYSQL数据库表前缀与表名实例操作

    这篇文章主要为大家详细介绍了织梦快速批量修改MYSQL数据库表前缀与表名实例操作,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 我们在安装织梦系统的时候,有一次 ...

  7. mysql简单部署_安装部署Mysql实例(最简单快速噢)

    题外话 作为Mysql DBA,我们平时必须要熟练的一个最最基础的技能,即安装部署Mysql实例,所以本文分享一个快速安装部署Mysql实例的方法. 一.环境介质准备 Mysql安装包准备 服务器准备 ...

  8. 《SolidWorks 2017中文版机械设计从入门到精通)》——2.7 复合草图实例操作

    本节书摘来自异步社区<SolidWorks 2017中文版机械设计从入门到精通>一书中的第2章,第2.7节,作者: 赵罘 , 杨晓晋 , 赵楠 更多章节内容可以访问云栖社区"异步 ...

  9. linux apple开发环境,Linux上构筑iPhone OS3.1.2开发环境 实例操作

    Linux上构筑iPhoneOS3.1.2开发环境 实例操作是本文要介绍的内容,开发iPhone应用程序标准的环境配置是基于intel Mac的.虽说现在Mac很便宜,但是仍然大部分人仍然在用wind ...

最新文章

  1. redis持久化方案
  2. 在Horizon Workspace中配置Windows单点登录-进阶篇
  3. 多喜临门,BCH币价应声上涨
  4. RANSAC算法原理与实现
  5. aix6.1 oracle12c,AIX6.1系统 oracle 11g数据库恢复过程
  6. atmega8 例程:PWM
  7. c++常用知识点,易错点,面试常问点
  8. jQuery删除节点和追加节点
  9. python hello world程序编写_用Python编写一个简单程序
  10. maven 打包时动态替换properties资源文件中的配置值
  11. 12.04 安装svn
  12. 大数据和商业智能BI有什么关系
  13. Django常用命令
  14. 如何使用离线网站,打开离线网站
  15. libiconv移植
  16. v65智慧屏是真的鸿蒙,华为智慧屏V65深测:真智慧or增智慧?
  17. mintui MessageBox用法
  18. 谷歌地图网页版_如何在网站嵌入谷歌地图
  19. 如何在论文中正确引用参考文献(自动标注)
  20. 【老生谈算法】matlab实现图像放大算法——图像放大算法

热门文章

  1. 1/cos^3的不定积分 cos^3分之一的不定积分
  2. 2019 Selenium3与Python3实战开发Web自动化测试框架(一)
  3. 高薪程序员面试题精讲系列152之电商专题(中)-SPU是怎么回事?SPU如何设计?SKU又是什么呢?SN你知道吗?
  4. 【PC工具】开源绿色好看实用桌面时钟Digital Clock 4
  5. Android相机开发详解(一)
  6. 织梦 plus/download.php,织梦/plus/download.php url重定向漏洞的解决方法
  7. 3D模型读取库:Assimp
  8. XSS注入基础入门篇
  9. java中级程序员面试题_中级Java程序员常见面试题汇总
  10. LiveVideoStackCon 2022 上海站优秀出品人、讲师及志愿者