yii2的基础操作

来源:互联网 发布:golang defer panic 编辑:程序博客网 时间:2024/04/29 13:28

yii2的启动与安装

1.yii2框架下载地址
http://www.yiichina.com/download
这里写图片描述
下载应用程序模板就可以
2.安装,然后查看环境是否符合(PHP5.4+)
http://127.0.0.60/basic/requirements.php

3 口文件
http://127.0.0.60/basic/web/index.php
yii\web\Request::cookieValidationKey must be configured with a secret key.
\basic\config\web.php

'cookieValidationKey' => '',//改成如下'cookieValidationKey' => 'ferf3efdsc',

同时要开启PHP扩展 open ssl

yii2请求流程结构图

  1. Yii应用的静态结构图
    一封信的故事,先到门卫(index)再交给老大(主体)老大给了我(控制器),我先用模型记录了一部分到数据库,然后写了回信交给(视图),并且拿了些小玩意从部件里面一并发回
    这里写图片描述]![这里写图片描述)

命名空间

  1. namespace是用来区分不同位置的相同类名,use关键字用来定义重复的位置,as用来进行修改相同类名,直接\是用来引用顶层空间的文件
    1. namespace app\Controllers
      use yii\web\controller

控制器的创建

在basic/controllers文件夹下新建一个HelloController.php文件
namespace app\Controllers
use yii\web\controller
class HelloController extends Controller{
function actionIndex(){
echo “hello word”}}
访问的时候的参数就是r=hello/index其中hell代表控制器,index代表控制器的方法
访问实例:(http://www.weixin.com/web/basic/web/index.php?r=hello/index)
路由中的r=hello不能像写类一样用大写Hello ..否则找不到相应的控制器。

控制器请求处理

获取URL中的请求参数:
如果参数当中r=hello/index&id=3传递到控制器中,控制器要用到请求组件接收
request=YII::app>request//idrequest中

request=Yii::app->request;
request>get(id,20);request->userIP;或request>userIp;ipyii2userIPpostrequest->post(名称,默认值)
request>isGetrequest->isPost
使用请求组件的get方式获取
\YII::app->request()
$request->get(id);

几个注意点:
命名空间:controllers有s;
引用命名空间:Controller里C是大写;
操作:actionIndex是规范写法,不存在action后面接自定义的操作名;

session,cookie操作

session=Yii::app->session; //取得session
session>isActive;//sessionsession->open(); //开启session
session>set(user,);//sessionsession[‘user’] = ‘李狗蛋’; //写的另一种形式

$session->get(‘user’); //取session中的数据

session>remove(user);//sessionunsetsession[‘user’]); //删除的另一种方式

//server到客户端
cookie=Yii::app->response->cookies; //获取cookie

cookiedata=array(name=>user,value=>slcheng);cookie->add(new yii/web/Cookie(cookiedata));//cookiecookie->remove(‘user’); //删除cookie数据

//从客户端取得cookie
cookie=Yii::app->request->cookies; //获得浏览器请求的数据
cookie=\YII::app->response->cookie;
cookiedata=array(name=>user,value=>zhangsi);cookes->add(new Cookie(cookiedata));cookies->remove(‘id’);

cookies=\YII::app-.request->cookies;
echo $cookies->getValue(‘users’,20);

0 0
原创粉丝点击