为了账号安全,请及时绑定邮箱和手机立即绑定

Yii框架不得不说的故事—基础篇(1)

withy PHP开发工程师
难度中级
时长 2小时39分
学习人数
综合评分9.67
176人评价 查看评价
9.9 内容实用
9.7 简洁易懂
9.4 逻辑清晰
  • 添加数据: helloController.php文件: $test = new Test; $test->id = 3; $test->title = 'title3'; $test->validate();//验证器,验证字段是否合法 if($test->hasErrors()){ echo 'data is error';//字段不合法 die; } $test->save(); 如果想要验证,在模型test.php文件中有对应的方法rules进行验证 test.php: public function rules(){ return [ ['id','integer'],['title','string','length'=>[0,5]]]; }
    查看全部
  • //数据模型之单表删除 //删除数据,先取出要删除的数据 /*$results = Test::find()->where(['id'=>1])->all(); $results[0]->delete();//调用delete()方法就可以删除第一条数据*/ //删除数据有个更快捷的方式:调用控制器当中的deleteAll()方法把整个表里的数据删掉;同时这个方法里也可以带上查询条件指定删除哪部分的数据。 //Test::deleteAll('id>0'); Test::deleteAll('id>:id',array(':id'=>0));//deleteAll也支持占位符的功能
    查看全部
  • Test::findBySql(sql,array()->all(); findBySql 两个参数
    查看全部
  • 1.ActiveRecord(活动记录类)<br> (1)方法:findBySql()继承之父类的,结果返回一个对象(放在数组当中)<br> 2.SQL入侵<br> (1)占位符:(:id),加载Sql语句后面<br> (2)在findBySql($sql,array())数组中赋值。由于array()会把用户传递过来的值作为一个整体去处理,<br> (3)findBySql防止SQL注入<br> // $sql='select * from Test where id=:id ';<br> // $result=Test::findBySql($sql,array(':id'=>2))->asArray()->all();//findBySql第二个参数设置占位符<br> <br> $sql='select * from Test where id=:id ';<br> $result=Test::find($sql)->where(['id'=>3])->asArray()->all();//findBySql第二个参数设置占位符<br> p($result); //id>0 /*$results = Test::find()->where(['>','id',0])->all(); print_r($results);*/ //id>=1 and id<=2 //$results = Test::find()->where(['between','id',1,2])->all(); //echo count($results); //title like '%title%' //$results=Test::find()->where(['like','title','title'])->all(); //print_r($results); //将查询结果转换成数组 // $results=Test::find()->where(['like','title','title'])->asArray()->all(); //批量查询 foreach ($Test::find()->batch(2) as $value) { # code... } print_r($results);
    查看全部
  • 数据模型: 1,和表名一致的文件; 2,引入命名空间:namespace app\models; 3, 使用命名空间:use yii\db\ActiveRecord; 4, 创建与表名一致的类并继承ActiveRecord; class tablename extends ActiveRecord{}
    查看全部
  • $layout = common ; //布局文件 $this 视图组件 如果想替换公共文件中的某段(数据块),可以在视图文件中使用: <?php $this->beginBlock('block1'); ?> <h1>....</h1> <?php $this->endBlock();?> 公共文件中调用 <?=$this->blocks['block1'];?> 判断显示数据块有木有,然后在显示 <?php if(isset($this->blocks['block1'])):?> <?=$this->blocks['block1'];?> <?php else: ?> <h1>hello Common </h1> <?php endif; ?>
    查看全部
    0 采集 收起 来源:视图之数据块

    2018-03-22

  • 1.在一个视图(index.php)中显示另一个试图(about.php):在视图index.php文件中使用<?=php echo $this->render('about');?>显示about视图; 2.注意:这时候Controller调用的是renderpartical() 3.当需要给(about.php)页面传入参数时,用render的第二个参数:$this->render('about',array('key'=>'value')),这样就可以把第二个参数数组传递给about.php这个视图中 4.(about.php)页面如何使用(index.php)页面传递过来的数据? (1)通过数组下边(key)直接可以访问 (2)语句:<?=$key;?>
    查看全部
  • render两种作用,第一是放到$content中,第二是显示layout布局
    查看全部
  • public $layout = 'common';//通过$layout属性去告诉render方法去显示common布局文件 //视图之布局文件 //把布局文件common.php和视图文件home.php、about.php用render()方法进行拼合,才 能达到之前视图的显示效果。 //rensder()方法在显示视图文件的时候会做2件事:第1件事是会把视图里的内容放到$content这个变量中;第2件事是render()方法会把布局文件给显示出来。 return $this->render('about');
    查看全部
  • <?php use yii\helpers\Html; use yii\helpers\HtmlPurifier; ?> <P><?=Html::encode($view_hello_str) ?> </P>//可以原样显示<script></script>代码 <P><?=HtmlPurifier::process($view_hello_str) ?> </P>//可以过滤掉<script></script>代码
    查看全部
  • 1.Controller和View关联 (1)控制器中: 调用一个renderpartial()方法,这个方法是基类Controller中的方法 这里使用$this这个关键字调用。 (2)renderpartial(“parm”),参数表示要显示那个视图文件,当然yii还规定了要显示视图,必须在前面加一个return语句: 完整语句:return $this->renderpartial(“parm”); (3)别的都叫方法,yii中就得叫动作。
    查看全部
  • $res = \YII::response; 更改状态码:$res->statusCode = "404"; 添加header: $res->header->add("pragma", "no-cache"); 修改header: $res->header->set("pragma", "max-age=5"); 删除header: $res->header->remove("pragma"); 跳转: $res->header->add("location", "http://www.baidu.com"); 重定向:$this->redirect("http://www.baidu.com", "302"); 文件下载:$res->header->add("content-disposition", "attachment; filename="a.jpg"); $res->sendFile("./robots.txt");
    查看全部
  • 命名空间:controllers有s; 引用命名空间:Controller里C是大写; 操作:actionIndex是规范写法,不存在action后面接自定义的操作名;
    查看全部
  • $session = Yii::$app->session; //取得session $session->isActive; //判断session状态 $session->open(); //开启session $session->set('user', '李狗蛋'); //往session中写入数据 $session['user'] = '李狗蛋'; //写的另一种形式 $session->get('user'); //取session中的数据 $session->remove('user'); //删除session中的数据(字段) unset($session['user']); //删除的另一种方式
    查看全部
  • public function actionCookies(){ //引用cookie需要先定义use yii\web\Cookie; $cookies = YII::$app->response->cookies; //yii响应cookie $cookies_add = array('name'=>'user','value'=>'testname'); $cookies->add(new Cookie($cookies_add)); //添加删除cookie $cookies->remove('user'); $cookies = YII::$app->request->cookies; //yii请求cookie $user = $cookies->getValue('user','默认参数'); echo $user; }
    查看全部

举报

0/150
提交
取消
课程须知
学习本门课程之前,建议先了解一下知识,会更有助于理解和掌握本门课程 1、掌握PHP基本的语言语法 2、对MVC开发方式有一定的了解
老师告诉你能学到什么?
1、php的新特征 2、一款前沿的框架的使用方式 3、新颖独到的程序设计

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!