分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

YII1 ?MVC初认识(二)

发布时间:2023-09-06 02:00责任编辑:彭小芳关键词:MVC

上次说了yii1的安装,这次说下简单的使用,其实使用看手册就可以了,我这里就简单说下快速调通一个框架,跑通一个helloworld的方法。

1.首先 你得知道 views controllers model都在哪里

首先找到controller文件夹,比如我打开了我手动新建的一个indexcontroller.php

里面的基础代码是我写的,先说下如何将controller里输出的数据返回到对应的view里,

用的就是$this->render()或者 $this->renderPartial(); 括号里可以传页面地址,例如$this->render(‘index’)

这2个方法都是返回数据到view,区别是render的话返回的时候还要返回公共部分,而renderpartial则不返回公共部分,我给大家简单直白说下啥意思

比如有个网站,比如首页他有导航,底部有版权,这个基本网站的每页都会显示,我就会把她放到一个公共文件里就可以了,而用了render后,公共文件里内容跟着显示,用了renderpartal则不显示出来。

2.页面渲染

别忘记新建view,view下新建一个文件夹 和controller名字相同就行,文件夹名字小写就行,然后里面不是html文件,文件夹里新建的都是php文件,例如我新建一个index文件夹,里面新建一个index.php文件,这个index.php就是静态页文件了,说到静态页了,那肯定会引入css,js啥的

css,js啥的 一般都放在assets文件夹里,我一般是assets文件夹里新建2个文件夹 一个叫 index,一个叫admin代表一个存储前台的样式文件,一个存储后台的样式文件,然后 index里创建 css,images,js等文件夹

有了 这些 js ,css,该怎么引入呢,看下面

在 静态文件里也就是刚才新建的index.php里

<?php echo Yii::app()->request->baseurl?>/assets/index/css/index.css

这样就可以正常引入了

3.把controller数据输出到view里

是不是有些人都想知道怎么做,跟着我来吧 

在indexcontroller.php的actionindex方法里写如下代码

 ???public function actionindex(){ ???????//echo ‘this is index controller‘; ???????//$this->render(‘index‘); ???????$data = array( ???????????‘title‘=>‘abcdefg‘, ???????); ???????$this->render(‘index‘,$data); ???}

然后view里 <?php echo $title?>就可以了

4.foreach使用

基本语法如下,通俗易懂

<?php foreach($article as $v):?>

<li><?php echo $v->title?></li>

<?php endforeach :?>

5.扩展自定义函数

说白了就是自己写个公公公方法能让其他的controller都能够调用到你写的这个方法。

写在哪里呢?------写在protected目录下,自己新建个php文件,比如function.php

然后随便写个方法 ,比如我写了一个这个方法

function charr($arr){

 echo "<pre>";

 echo "</pre>";

}

对了 ,定义了文件,别忘记在入口文件引入,不然所有文件会无法访问

那么就在index.php中引入一下吧

include_once ‘./protected/function.php‘;

然后 你可以在你的controller里 写个数组  然后用 封装好的这个函数打印下试试  charr($arr);

上面都是我手写的可能会存在错误,欢迎大家指出,或者加群相互讨论。

YII1 ?MVC初认识(二)

原文地址:https://www.cnblogs.com/HoverM/p/9204973.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved