Rumah php教程 PHP开发 Yii2.0经常调用的常量、变量、方法、函数

Yii2.0经常调用的常量、变量、方法、函数

Jan 03, 2017 am 09:52 AM

<?php 
defined(&#39;YII_DEBUG&#39;) or define(&#39;YII_DEBUG&#39;, true);	
//当在调试模式下,应用会保留更多日志信息,如果抛出异常,会显示详细的错误调用堆栈。因此,调试模式主要适合在开发阶段使用,YII_DEBUG 默认值为 false。
return $this->render(&#39;list&#39;);	//加载视图模板,一定要return 否则会空白
$this->render(&#39;_overview&#39;); //在视图模板中,可以通过这种方式加载视图模板

//#############################请求#######################
$request = Yii::$app->request;
$get = $request->get(); // 等价于: $get = $_GET;
$id = $request->get(&#39;id&#39;);	// 等价于: $id = isset($_GET[&#39;id&#39;]) ? $_GET[&#39;id&#39;] : null;
$id = $request->get(&#39;id&#39;, 1);	// 等价于: $id = isset($_GET[&#39;id&#39;]) ? $_GET[&#39;id&#39;] : 1;
$post = $request->post(); // 等价于: $post = $_POST;	
$name = $request->post(&#39;name&#39;); // 等价于: $name = isset($_POST[&#39;name&#39;]) ? $_POST[&#39;name&#39;] : null;
$name = $request->post(&#39;name&#39;, &#39;&#39;); // 等价于: $name = isset($_POST[&#39;name&#39;]) ? $_POST[&#39;name&#39;] : &#39;&#39;;

//#############################请求方式#######################
$request = Yii::$app->request;
if ($request->isAjax) { /* 该请求是一个 AJAX 请求 */ }
if ($request->isGet) { /* 请求方法是 GET */ }
if ($request->isPost) { /* 请求方法是 POST */ }
if ($request->isPut) { /* 请求方法是 PUT */ }

//#############################请求类属性#######################
Yii::$app->request->url; //结果:/admin/index.php/product?id=100, 此URL不包括host info部分。
Yii::$app->request->absoluteUrl;	//结果:http://www.phpxs.com/post/index.php/product?id=100, 包含host infode的整个URL。
Yii::$app->request->hostInfo;	//结果:http://www.phpxs.com, 只有host info部分。
Yii::$app->request->pathInfo;	//结果:/product, 这个是入口脚本之后,问号之前(查询字符串)的部分。
Yii::$app->request->queryString;	//结果:id=100,问号之后的部分。
Yii::$app->request->baseUrl;	//结果:/admin, host info之后, 入口脚本之前的部分。
Yii::$app->request->scriptUrl;	//结果:/admin/index.php, 没有path info和查询字符串部分。
Yii::$app->request->serverName;	//结果:example.com, URL中的host name。
Yii::$app->request->serverPort;	//结果:80, 这是web服务中使用的端口。
Yii::$app->request->userAgent;	//结果:返回 User-Agent 头
Yii::$app->request->contentType;	//结果:返回 Content-Type 头的值, Content-Type 是请求体中MIME类型数据。
Yii::$app->request->acceptableContentTypes;	//结果:返回用户可接受的内容MIME类型。 返回的类型是按照他们的质量得分来排序的。得分最高的类型将被最先返回。
Yii::$app->request->acceptableLanguages;	//结果:返回用户可接受的语言。 返回的语言是按照他们的偏好层次来排序的。第一个参数代表最优先的语言。
Yii::$app->request->getPreferredLanguage();//结果:这个方法通过 yiiwebRequest::acceptableLanguages 在你的应用中所支持的语言列表里进行比较筛选,返回最适合的语言。

//#############################客户端信息#######################
Yii::$app->request->userHost;
Yii::$app->request->userIP;

#############################HTTP头部#######################
$headers = Yii::$app->response->headers;
$headers->add(&#39;Pragma&#39;, &#39;no-cache&#39;);	// 增加一个 Pragma 头,已存在的Pragma 头不会被覆盖。
$headers->set(&#39;Pragma&#39;, &#39;no-cache&#39;);	// 设置一个Pragma 头. 任何已存在的Pragma 头都会被丢弃
$values = $headers->remove(&#39;Pragma&#39;);	// 删除Pragma 头并返回删除的Pragma 头的值到数组

//#############################文件下载#######################
yiiwebResponse::sendFile();	//发送一个已存在的文件到客户端
yiiwebResponse::sendContentAsFile();	//发送一个文本字符串作为文件到客户端
yiiwebResponse::sendStreamAsFile();	//发送一个已存在的文件流作为文件到客户端

public function actionDownload(){
return Yii::$app->response->sendFile(&#39;path/to/file.txt&#39;);
}

//#############################301跳转########################
Yii::$app->response->redirect(&#39;http://example.com/new&#39;, 301)->send();

//#############################状态码########################
Yii::$app->response->statusCode = 200;

//#############################session使用########################
$session = Yii::$app->session; 
if ($session->isActive) // 检查session是否开启
$session->open();	// 开启session
$session->close();	// 关闭session
$session->destroy();	// 销毁session中所有已注册的数据

//#########################cookie的使用#############
$cookies = Yii::$app->request->cookies;
$language = $cookies->getValue(&#39;language&#39;, &#39;en&#39;);	// 获取名为 "language" cookie 的值,如果不存在,返回默认值"en"

// 另一种方式获取名为 "language" cookie 的值
if (($cookie = $cookies->get(&#39;language&#39;)) !== null) {
$language = $cookie->value;
}

// 可将 $cookies当作数组使用
if (isset($cookies[&#39;language&#39;])) {
$language = $cookies[&#39;language&#39;]->value;
}

// 在要发送的响应中添加一个新的cookie
$cookies->add(new yiiwebCookie([
&#39;name&#39; => &#39;language&#39;,
&#39;value&#39; => &#39;zh-CN&#39;,
]));

// 判断是否存在名为"language" 的 cookie
if ($cookies->has(&#39;language&#39;))
if (isset($cookies[&#39;language&#39;])) ;

//#####################Yii2.0 对数据库 查询的一些简单的操作 #####################
class UserModel extends yiidbActiveRecord{
public function test(){
self::find()->all(); //此方法返回所有数据;
self::findOne($id); //此方法返回 主键 id=1 的一条数据(举个例子);
self::find()->where([&#39;name&#39; => &#39;小伙儿&#39;])->one(); //此方法返回 [&#39;name&#39; => &#39;小伙儿&#39;] 的一条数据;
self::find()->where([&#39;name&#39; => &#39;小伙儿&#39;])->all(); //此方法返回 [&#39;name&#39; => &#39;小伙儿&#39;] 的所有数据;
self::find()->orderBy(&#39;id DESC&#39;)->all(); //此方法是排序查询;
self::findBySql(&#39;SELECT * FROM user&#39;)->all(); //此方法是用 sql 语句查询 user 表里面的所有数据;
self::findBySql(&#39;SELECT * FROM user&#39;)->one(); //此方法是用 sql 语句查询 user 表里面的一条数据;
self::find()->andWhere([&#39;sex&#39; => &#39;男&#39;, &#39;age&#39; => &#39;24&#39;])->count(&#39;id&#39;); //统计符合条件的总条数;
self::find()->one(); //此方法返回一条数据;
self::find()->all(); //此方法返回所有数据;
self::find()->count(); //此方法返回记录的数量;
self::find()->average(&#39;age&#39;); //此方法返回指定列的平均值;
self::find()->min(&#39;age&#39;); //此方法返回指定列的最小值 ;
self::find()->max(&#39;age&#39;); //此方法返回指定列的最大值 ;
self::find()->scalar(); //此方法返回值的第一行第一列的查询结果;
self::find()->column(); //此方法返回查询结果中的第一列的值;
self::find()->exists(); //此方法返回一个值指示是否包含查询结果的数据行;
self::find()->batch(10); //每次取 10 条数据
self::find()->each(10); //每次取 10 条数据, 迭代查询
}
}
Salin selepas log masuk

以上就是Yii2.0经常调用的常量、变量、方法、函数的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)