-
yii的简单控制器实例查看全部
-
命令空间引入类的方式查看全部
-
Yii框架应用结构图查看全部
-
访问requirements.php会去检测系统的环境查看全部
-
控制器之响应处理查看全部
-
控制器的创建查看全部
-
namespace看懂了查看全部
-
响应组件作用 1、修改http头部返回信息 2、下载文件sendfile方法 3、查看全部
-
命名空间解决类相同的问题。 namespace a/b/c;保存到命名空间中 use a/b/cApple==apple use d/e/fApple as bapple 不放在任意的命名空间的就是顶层类 \Apple 就是顶层的Apple查看全部
-
$layout = 'common' ; //布局文件 $this 视图组件 如果想替换公共文件中的某段(数据块),可以在视图文件中使用: <?php $this->beginBlock('block1'); ?> <h1>....</h1> <?php $this->endBlock();?> 公共文件中调用 <?php if(isset($this->blocks['block1']));?> <?=$this->blocks['block1'];?> <?php else;?> <h1>使用默认数据块</h1> <?php endif;?>即可替换数据块。查看全部
-
1.在一个视图(index.php)中显示另一个试图(about.php):在视图index.php文件中使用<?php echo $this->render('about');?>显示about视图; 2.注意:这时候Controller调用的是renderpartical('index') 3.当需要给(about.php)页面传入参数时,用render的第二个参数:$this->render('about',array('key'=>'value')),这样就可以把第二个参数数组传递给about.php这个视图中 4.(about.php)页面如何使用(index.php)页面传递过来的数据? (1)通过数组下边(key)直接可以访问 (2)语句:<?=$key;?>查看全部
-
视图——布局文件<br> 学习目的:使我们今后的能够精简程序的代码<br> 学习准备:创建一个common.php 公共布局文件,放在layouts文件夹下,把要公用的代码先放进去(这里以常用html基础代码为例)<br> 使用原理:<br> 1.先通过系统内置属性$layout指定调用的公共布局文件<br> public $layout = 'common';<br> 2. 通过yii内置方法render('要显示的内容');将要显示的内容能够存入yii系统内置变量$content中<br> return $this ->render('about');<br> 3. 在公共布局文件中调用这个$content变量<br> <?=$content;?>查看全部
-
//视图之数据安全 //在$hello_str的值后边加上一段js代码,在浏览器刷新页面时,js代码被当成真的js代码显示出来。 //这样会产生问题,假如$hello_str是从用户那边传递过来的,用户以请求的方式发送了一段内容(含有js代码),这样就真的放在视图里去显示了。 //那么如果在js代码中用户放进了一些恶意代码,就会造成跨站脚本攻击,从而危害到安全。Yii框架提供了一些专门的工具来防止这些问题的发生。 $hello_str = 'Hello God!<script>alert(3);</script>'; $data = array(); $data['view_hello_str'] = $hello_str; return $this->renderPartial('index',$data); <!-- 视图之数据安全 --> <!-- Yii提供了一个工具类Html(在命名空间中的类,需要通过php代码去告诉应用程序去使用yii\helpers\Html;下的这么一个类),类中有一个方法encode(可以对这个变量当中的js代码进行转义) --> <?php use yii\helpers\Html; use yii\helpers\HtmlPurifier; ?> <h1><?=Html::encode($view_hello_str);?></h1> <!-- js代码会被原样的显示出来 --> <!-- 除了通过转义的方式去避免跨站脚本攻击之外,还可以通过另外一个类HtmlPurifier去过滤js代码 --> <h1><?=HtmlPurifier::process($view_hello_str);?></h1> <!-- process方法可以把变量里的js代码给彻底过滤掉 -->查看全部
-
对应模型查看全部
-
1.控制器和视图之间传递数据: (1)定义一个变量$hello="Hello World!"; (2)声明一个数组$date=array(); (3)这里使用了关联数组,把这个字符串变量放到数组$date中 (4)$date['view_hello_str']=$hello; (5)return $this->renderPartial(“index”,$date); 2.在视图中如何使用数据(也就是控制器传递过来的数组) (1)只需在模板中调用$data的key值(也就是数组下标),即可获得对应的value值 (2)<?=$键名 ?> //?= 之间不能有空格查看全部
举报
0/150
提交
取消