Yii當瀏覽器發(fā)出請求的,首先會講求交給控制器操作
請求組件:
$request = Yii::$app->request(); ///聲明一個變量,獲取請求
echo $request->get('id'); 獲取get傳值的id
$request->post('name',默認值)
if(request->isget){ /* 略*/} //判斷是否獲取了數(shù)據(jù)
響應(yīng)組件:
$res = Yii::app->repose; //聲明一個$res變量
$res->header->set('praga',nache) //向http協(xié)議傳值中賦值
$res->header->add('location','http://www.baidu.com') //指向一個地址
$res->redirect('url')
$res->header->add('content-disposition','attachment';filename="a.jpg") //添加下載文件,名字為a.jpg
$res->sendFile(./b.jpg)
Yii2.0中Session的獲取:
$session = Yii::$app->session; //獲取session元素
$session->open(); //開啟session
session->set('user',張三) //設(shè)置session并向其中的user字段中賦值
$session->get('user') //獲取user
if($sersion->isActive) //判斷是是否為空/存在
{
echo session is active
}
session作為數(shù)組來操作
$session[user] = "張三";
cookies的處理:
Yii::$app->response->cookies; //獲取cookies元素
$cookies_data = array('array'=>'user','value'=>'張三') //賦值
$cookies->add(new cookie($cookies_data)); //添加
$cookies->remove('id');// 刪除字段
視圖數(shù)據(jù)的安全常用Yii2.0類:
Yii\helpers\HTML
yii\helpers\HTMLpurifile
XXX數(shù)據(jù)塊:
this->beginBlock('block1')
$this->blocks['block1'];
Model主要是對數(shù)據(jù)庫的操作體現(xiàn)了DAO的數(shù)據(jù)訪問對象模式,所有的model都繼承自ActiveRecord。
常用批量查詢
foreach(test::find()->batch(2)as $test)
{
print_f(cout($test));
$result =test::find()->where([條件])->all();
$result->delete();
$test =new test();
$test->id =3;
$test->title ='title';
test->valiures;
$test ->save();
rules方法:定義指定字段規(guī)則,對信息過濾判斷字段是否符合規(guī)則
//例子:
public function rules(){
return[
['id','title']
['title','string','length'=>[0,5]]
];}