ci手册教程1

       ci框架使用的是MVC,M是模型,主要存放和数据库相关的操作,比如向数据库写数据,从数据库中读取数据。V是视图,前端的文件都这里,是用户可以看到的,可以显示出来的东西。C是控制器,是整个框架比较核心的一部分,主要是连接模型和视图,将模型操作的数据给视图所使用,大部分的代码都在C中。

       下面是MVC在ci中的位置,注意:前端在views中的代码也要使用.php后缀名。

以创建一个 简单新闻系统为例,来熟悉ci框架的基本操作。

  • 加载静态内容:主要介绍控制器(Controllers), 视图(Views)和路由(Routing)的基础知识。
  • 读取新闻条目:开始介绍模型(Models)的相关知识, 以及在模型中执行一些基本的数据库操作。
  • 创建新闻条目:主要介绍在 CodeIgniter 中执行高级数据库操作,以及表单验证的相关知识。

加载静态条目

新建一个文件 application/controllers/Pages.php ,然后添加如下代码。

<?php
class Pages extends CI_Controller {

    public function view($page = 'home')
    {
    }
}

这段代码的意思是,在controllers中创建了一个 Pages 类,并继承(extends表示继承,在controllers中的类必须继承 CI_Controller 类),有一个方法(实际上就是函数)view 并可接受一个 $page 参数。 

现在,你已经创建了你的第一个方法,是时候创建一些基本的页面模板了,我们将 新建两个视图(页面模板)分别作为我们的页脚和页头。

新建页头文件 application/views/templates/header.php 并添加以下代码:

<html>
    <head>
        <title>CodeIgniter Tutorial</title>
    </head>
    <body>

        <h1><?php echo $title; ?></h1>

上面这段代码可以看出,PHP是可以写在html里的,用<?php ...?>括住. 

echo $title;

 这句话的意思是显示从后端得到的$title,后面将从控制器中传送$title。

再新建个页脚文件 application/views/templates/footer.php ,然后添加以下代码:

<em>&copy; 2015</em>
    </body>
</html>

这样,一个简单的前端界面就设计好了,下一步是在控制器中添加逻辑。

你刚刚新建了一个控制器,里面有一个 view() 方法,这个方法接受一个参数 用于指定要加载的页面,静态页面模板位于 application/views/pages/ 目录。

在该目录中,再新建两个文件 home.phpabout.php ,在每个文件里随便 写点东西然后保存它们。

为了加载这些页面,你需要先检查下请求的页面是否存在:

public function view($page = 'home')
{
  if ( ! file_exists(APPPATH.'views/pages/'.$page.'.php'))
    {
        show_404();
    }
    $data['title'] = ucfirst($page); 

    $this->load->view('templates/header', $data);
    $this->load->view('pages/'.$page, $data);
    $this->load->view('templates/footer', $data);
}

if判断请求的页面是否存在,当请求的页面存在时,将包括页面和页脚一起被加载并显示给用户,如果不存在, 会显示一个 "404 Page not found" 错误。file_exists() 是个原生的 PHP 函数,用于检查某个 文件是否存在,show_404() 是个 CodeIgniter 内置的函数,用来显示一个默认的 错误页面。

在页头文件中,$title 变量用来自定义页面的标题,它是在这个方法中赋值的, 但是注意的是并不是直接赋值给 title 变量,而是赋值给一个 $data 数组的 title 元素。(注意,ci中向前端传数据一般是将数据整合成一个数组,数组的下标是变量名,在前端界面直接使用变量名,所以控制器中 $data['title'] 的值,就等于视图中的 $title 的值。)

最后要做的是按顺序加载所需的视图,view() 方法的第二个参数用于向视图传递参数, $data 数组中的每一项将被赋值给一个变量,这个变量的名字就是数组的键值。

 $this->load->view('pages/'.$page, $data);

中 ,表示显示pages/$page界面,”.“ 的作用是连接域名。

控制器现在开始工作了!在你的浏览器中输入 [your-site-url]index.php/pages/view 来查看你的页面。

在本地访问本地页面时,url的输入方法大致是

localhost/[你的文件地址从www直到index.php]/index.php/[类名]/[方法名及需要的参数]

例如项目路径

,要显示之前做得静态界面,则url为http://localhost/news/index.php/Pages/view 

如果希望显示about.php,则url为http://localhost/news/index.php/Pages/view/about

显示结果为

ci在url上不区分大小写,但如果出现404的情况,需要多尝试,检查大小写是否符合要求,文件路径是否正确,路径是否有中文等问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我无法提供引用中的文件内容。但是我可以向您介绍一些STC89C52RC单片机的基本知识。STC89C52RC是一种高性能的单片机,属于STC系列。它具有较大的存储容量和丰富的外设资源,适用于各种嵌入式系统开发和控制应用。在学习STC89C52RC单片机教程时,您可以关注以下几个方面的内容: 1. 硬件介绍:了解STC89C52RC单片机的主要硬件特性,包括芯片架构、引脚功能、存储器结构、时钟系统等。 2. 编程工具:选择适合的编程工具,如Keil C51或SDCC等,学习基本的单片机编程语言和开发环境的使用。 3. 程序设计:了解STC89C52RC单片机的指令集和编程技巧,学习如何编写简单的程序,包括GPIO控制、定时器、中断、串口通信等。 4. 外设应用:学习如何使用STC89C52RC单片机的外设资源,如ADC模数转换、PWM输出、LCD液晶显示、SPI、I2C等。 5. 实践项目:通过实际的项目练习,将所学知识应用到实际的嵌入式系统开发中,提升对STC89C52RC单片机的理解和应用能力。 请注意,以上内容只是STC89C52RC单片机教程的一些基本方面,具体的教程和学习资源可以通过搜索引擎或嵌入式系统开发相关的网站和论坛来获取。祝您学习顺利!<span class="em">1</span> #### 引用[.reference_title] - *1* [stc89c52rc单片机手册.pdf](https://download.csdn.net/download/a66889999/86105517)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值