资讯专栏INFORMATION COLUMN

跟着阿大学CodeIgniter (一)——了解MVC

wenzi / 2539人阅读

摘要:它提供一套丰富的标准库以及简单的接口和逻辑结构,其目的是使开发人员更快速地进行项目开发。文件放在里类名首字母必须大写,并继承的类访问的路径为项目名入口控制器名控制器的方法参数。

有的没的


阿大镇文(-_-メ)~
阿大你太黑了,回去洗把脸看看有没有救~

学习背景

CI是一个比较流行的PHP MVC框架,CI的文档完善和资源丰富,适合初学~
按照我觉得比较高效的学习方法:了解基本语法 -> 学会使用一个流行的框架 -> 反过来在用原生语言自己实现一个框架

关于CodeIgniter

codeigniter是一套给 PHP 网站开发者使用的应用程序开发框架和工具包。它提供一套丰富的标准库以及简单的接口和逻辑结构,其目的是使开发人员更快速地进行项目开发。使用 CodeIgniter 可以减少代码的编写量,并将你的精力投入到项目的创造性开发上。

什么MVC

M:Model,模型,通常包括对数据库的操作

V:View,视图,给用户看的页面,模板

C:Controller,控制器,接收用户请求,让M和V执行操作,生成页面返回到用户端

准备工作

下载CI框架

解压放置开发目录

开启本地服务器(这里我使用的是apache和mysql)

控制器

一个控制器就是一个类文件,用户通过URL访问的就是某个Controller的类的某个成员方法。

文件放在application/controllers里

类名首字母必须大写,并继承CI的类CI_Controller

访问的路径为:localhost/项目名/入口/控制器名/控制器的方法[/参数]。

若需要传参,访问时在地址后加"/参数值"

例如,把下面文件保存为ci/application/controllers/hello.php



访问http://localhost/ci/index.php/hello/sayhello/segmentfault, 就可以在页面上看到"segmentfault"。

视图

文件放在application/views里

通过控制器可以合成页面

在控制器中的调用方法:$this -> load -> view(视图名, 参数数组);

例如:用一个控制器,调用几个视图,显示点文字

ci/application/controllers/hello.php

 $name, "v_word" => $word); 
        // 把变量合成一个数组,以便传入视图。带"v"前缀的是在视图里引用的变量名,我故意做得带区别一些。
        $this -> load -> view("welcome.php", $data);
        $this -> load -> view("foot.php");
        // 可以同时调用多个视图。如果是调用php文件,可省略后缀
    }
}

ci/application/views/welcome.php

recommends to you.

ci/application/views/foot.php

I"m footer.

访问http://localhost/ci/index.php/hello, 就可以在页面上看到

  

Da recommends SegmentFault to you.
I"m footer.

小练习——文件操作

功能:每刷新一次页面,页面上的数字加一
ci/application/controllers/counter.php

 $c);
        $c++;
        $re_f = fopen("./num.txt", "w");
        fwrite($re_f, $c);
        fclose($re_f);
        $this -> load -> view("count.php", $data);
    }
}

ci/application/views/count.php

访问http://localhost/ci/index.php/counter 刷新看看吧~

本系列文章

跟着阿大学CodeIgniter (一)——了解MVC
跟着阿大学CodeIgniter (二)—— 文件上传
跟着阿大学CodeIgniter (三)—— 操作数据库

本系列文章前五章根据php100 2012 15到20课的视频学习整理并加入自己的内容而成

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/20663.html

相关文章

  • 跟着阿大CodeIgniter (二)—— 文件上传

    摘要:文件名中的扩展名也必须是允许的文件类型。注意通常也有这项限制,可以在文件中指定。上传文件的高度最大值像素为单位。 showImg(http://segmentfault.com/img/bVbPbI); 阿大说,为做一张配图,还要换系统,好苦13 ╮(╯-╰)╭ 原生php上传 在使用CI之前,我们来看看用原生代码是如何上传的,做个对比,就知道CI有多么方便~ 首先创建一个视图c...

    crelaber 评论0 收藏0
  • 跟着阿大CodeIgniter (三)—— 操作数据库

    摘要:提供了强大的数据库函数类,源码是文件。配置数据库文件到进行必要的配置,把数据库名密码编码等填写好。本系列文章跟着阿大学一了解跟着阿大学二文件上传跟着阿大学三操作数据库 碎碎念 过年还来SegmentFault学习的都是好少年~ showImg(http://segmentfault.com/img/bVbQOE); 知识重点 涉及到数据库,就是比较复杂的内容了,所以本文略长,但...

    eechen 评论0 收藏0
  • 跟着阿大CodeIgniter (四)——登录验证

    摘要:镇文图什么是是用于保持状态的基于服务器的方法。可以简单理解为服务器给用户生成了一个通行证。建立文件意味着我们待会要用到控制器的函数退出调用控制器的函数编写控制器类接下来,我们要一步步往这个类里面加功能。 镇文图 showImg(http://segmentfault.com/img/bVbSFL); 什么是Session Session是用于保持状态的基于Web服务器的方法。可以...

    xiaowugui666 评论0 收藏0
  • Codeigniter 4.0-dev 版源码习笔记之四——详细路由过程

    摘要:行,判断如果为空,那么返回默认路由。行,把处理完毕后找到的返回。方法该方法是自动按着约定规则去目录去找路由的过程。此文可以转载,但转载前需要发邮件到进行沟通,未沟通的均视作侵权。 前言 我个人觉得在当前 MVC 流行的架构下,要想去了解一个框架,或者是一个基于此架构下的应用程序,最好的入手方式就是先看路由,虽然路由不是 MVC 里的任何一个,但是知道了路由的来龙去脉就知道了整个框架或者...

    NSFish 评论0 收藏0
  • 【译】CodeIgniter HMVC模块扩展使用文档

    摘要:和模块分离类似,模块扩展使得模块变得可便携的。模块化意味着模块化。但是,模块扩展更进一步,它允许这些模块互相通信。 CodeIgniter HMVC扩展说明 原文地址:Modular Extensions - HMVC 模块扩展——HMVC 模块扩展让CodeIgniter框架模块化。模块是一组独立的组件(通常有模型、控制器和视图),它们被分类在应用模块的子文件夹中,并且能够直接拖到其...

    teren 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<