一 控制器访问
http://127.0.0.1/yii/web/index.php?r=hello/index
<?php
namespace app\controllers;
use yii\web\Controller;
class HelloController extends Controller
{
public function actionIndex(){ // 操作必须以action开头
return 'hello world';
}
}
?>
二 组件
1 request(请求组件)
$request = Yii::$app->request; // 请求组件
if($request->isGet){ } // 判断请求方式是否是get
if($request->isAjax){ } // 判断请求方式是否是AJAX 请求
echo $request->userIp.'<br>'; // 获取请求用户ip
echo $request->request->userHost; // 获取请求用户主机
echo $request->get('id').'<br>'; // 获取get请求参数
echo $request->post('id').'<br>'; // 获取post请求参数
echo $request->bodyParams; // 返回所有参数
echo $request->getBodyParam('id'); // 返回参数
echo $request->url; // 此 URL 不包括主机信息部分。
更多见 >>> 请求处理
2 response(响应组件)
$response = Yii::$app->response; // 响应组件
$response->statusCode = 200; // 设置响应状态码
echo $response->statusCode; // 获取响应状态码
// 添加 设置 删除 header中的参数
$response->headers->add('pragma','no-cache');
$response->headers->set('pragma','no-cache');
$response->headers->remove('pragma');
// 跳转
$response->headers->add('location','http://www.baidu.com');
$response->redirect('http://www.baidu.com',302);
// 文件下载
$response->headers->add('content-disposition','attachment;filename="a.jpg"');
$response->sendFile('./test.txt');
更多见 >>> 响应处理
3 session组件
$session = Yii::$app->session; // session组件
if($session->isActive){} //判断session是否开启
$session->open(); //开启
$session->set('user','张三'); //设置
echo $session->get('user'); //获取
$session->remove('user'); //删除
$session['user'] = '张三'; //设置
echo $session->get('user');
4 cookie操作
// cookie加密是使用basic/config/web.php中的cookieValidationKey配置字符串
// 使用response组件设置
$cookies = $response->cookies;
$cookie_data = array('name'=>'user','value'=>'zhangsan');
$cookies->add(new Cookie($cookie_data)); // 这里要 use yii\web\Cookie;
$cookies->remove('user');
// 使用request组件读取
$cookies = $request->cookies;
echo $cookies->getValue('user');
更多见 >>> sessions-cookies