Yii之路(第八)
【URL地址美化】
给域名地址做一个别名
伪静态。通过设置服务器服务。做域名地址的转换工作。
urlManager地址美化,通过程序的方式实现地址的美化工作
http://xxxxx.com/index.php?r = user/login
变成
http://xxxx.com/index.php/user/login
以路由的方式做路由的转换
变成(加上后缀):
http://xxxx.com/index.php/user/login.html
配置URLManager组件:
这个是动态的配置路由
/aa3d2e17-7c01-4e11-b854-1f64343f8fc6/uk7PfNKRzvqWUrBvgZydhyQGFeUnqXGpS8OBMu6gdpk!/b/dG8BAAAAAAAA&bo=NQKQAAAAAAAFAIQ!" width="565" alt="" style="vertical-align:top;font-family:Arial;font-size:14px;line-height:22px;" />
/aa3d2e17-7c01-4e11-b854-1f64343f8fc6/nuPb3.KqPrCMm3o4ZxnVzZS298TX0QELILUqEsj1r8g!/b/dOQAAAAAAAAA&bo=EAGEAAAAAAAFALY!" width="272" alt="" style="vertical-align:top;font-family:Arial;font-size:14px;line-height:22px;" />
伪静态配置.htaccess
【错误页面的处理】
訪问一个错误的控制器
訪问一个错误的方法
有些控制器和方法禁止訪问
以上错误信息是不方便给外边用户看到的。
错误信息在site/error这个地方定义的
还有就是debug模式要关闭。
才干看到自己定义错误
【主题文件夹】
配置使用主题:
【面包屑】
这是单独的view页面展示
view下的布局(layout)展示:
/aa3d2e17-7c01-4e11-b854-1f64343f8fc6/WMxDJrAfcbR8mFg5A5Q5rScAyWfv8CLqqPNMT8800c8!/b/dH8BAAAAAAAA&bo=9QGnAAAAAAAFAHA!" width="501" alt="" style="vertical-align:top;" />
通过小物件widget实现面包屑的显示。
【数据处理DAO】
Yii框架对数据处理能够通过两种方式:AR/DAO
前者主要是对简单的sql语句处理
后者才是处理复杂的sql语句
两种使用的基础是PDO。php data object
php数据对象PDO就是为了兼容php处理各种数据库(mysql/oracle/sqlserver)我们
定义一条sql语句就能够在mysql/oracle/sqlserver不同数据库来执行。
AR:处理数据 CActiveRecord
DAO:对数据的处理 CdbCommand CDbDataReader
//DAO方式的 插入动作
public function actionCreate()
{
$res=Yii::app()->db->createCommand()->insert("user",array(
'username'=>'水墨淡清',
));
dump($res,FALSE);
dump(Yii::app()->db->getLastInsertID());//获取最新插入的ID
}
//DAO方式的 修修改作
public function actionUpdate()
{
$res=Yii::app()->db->createCommand()->update('user',array(
'username'=>'我是来玩的'
), 'id=:id',array(':id'=>24));
dump($res);
}
//DAO方式的 删除动作
public function actionDelete($id)
{
$id=trim($id);
$res=Yii::app()->db->createCommand()->delete('user','id=:id',array(':id'=>$id));
dump($res);
}
//单条数据查询 queryRow()
public function actionRow()
{
$row=Yii::app()->db->createCommand()->select('id,username,city_id')->from('user')->where('id=:id',array(':id'=>2))->queryRow();
dump($row);
}
//多条数据查询 queryAll()
public function actionAll()
{
$all=Yii::app()->db->createCommand()->select('id,username,city_id')->from('user')->where('id>:id',array(':id'=>1))->queryAll();
dump($all);
}
//统计数据数量 queryScalar()
public function actionScalar()
{
$scalar=Yii::app()->db->createCommand()->select('count(1)')->from('user')->where('id>:id',array(':id'=>1))->queryScalar();
dump($scalar);
}
//查询全部的ID
public function actionColumn()
{
$ids=Yii::app()->db->createCommand()->select('id')->from('user')->where('id>:id',array(':id'=>1))->queryColumn();
dump($ids);
}
Yii之路(第八)的更多相关文章
- 云计算分布式大数据Hadoop实战高手之路第八讲Hadoop图文训练课程:Hadoop文件系统的操作实战
本讲通过实验的方式讲解Hadoop文件系统的操作. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发布云 ...
- Spark学习之路 (八)SparkCore的调优之开发调优
摘抄自:https://tech.meituan.com/spark-tuning-basic.html 前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark ...
- 微软企业库5.0 学习之路——第八步、使用Configuration Setting模块等多种方式分类管理企业库配置信息
在介绍完企业库几个常用模块后,我今天要对企业库的配置文件进行处理,缘由是我打开web.config想进行一些配置的时候发现web.config已经变的异常的臃肿(大量的企业库配置信息充斥其中),所以决 ...
- Spark学习之路 (八)SparkCore的调优之开发调优[转]
前言 在大数据计算领域,Spark已经成为了越来越流行.越来越受欢迎的计算平台之一.Spark的功能涵盖了大数据领域的离线批处理.SQL类处理.流式/实时计算.机器学习.图计算等各种不同类型的计算操作 ...
- FastAPI 学习之路(八)路径参数和数值的校验
系列文章: FastAPI 学习之路(一)fastapi--高性能web开发框架 FastAPI 学习之路(二) FastAPI 学习之路(三) FastAPI 学习之路(四) FastAPI 学习之 ...
- 架构之路(八)从CurrentUser说起
CurrentUser,也就是当前用户,这是我们系统中大量使用的一个概念. 确认当前用户 当然,我们利用的是cookie:用户的ID存放在cookie中,服务器端通过cookie中的Id,查找数据库, ...
- python之路十八
1.JS 正则 test - 判断字符串是否符合规定的正则 rep = /\d+/; rep.test("asdfoiklfasdf89asdfasdf ...
- 嵌入式Linux驱动学习之路(十八)LCD驱动
驱动代码: /************************************************************************* > File Name: lcd ...
- WPF学习之路(八)页面
传统的应用程序中有两类应用程序模式:桌面应用,Web应用.WPF的导航应用程序模糊了这两类应用程序的界限的第三类应用程序 WPF导航表现为两种形式,一是将导航内容寄宿于窗口,二是XAML浏览器应用程序 ...
随机推荐
- Django中的tags,母版和继承,组件,静态文件相关,自定义simpletag和自定义inclusion_tag
Tags for <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% endfor %} &l ...
- STM32F407 SPI 个人笔记
概述 SPI ,Serial Peripheral interface,串行外围设备接口 全双工,同步的通信总线,四根线 主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器 ...
- PHP优化之批量操作MySQL
设计一个数据表如下: create table optimization( id INT NOT NULL AUTO_INCREMENT, value VARCHAR(10) NOT NULL, PR ...
- 【LeetCode】Powerful Integers(强整数)
这道题是LeetCode里的第970道题. 题目描述: 给定两个正整数 x 和 y,如果某一整数等于 x^i + y^j,其中整数 i >= 0 且 j >= 0,那么我们认为该整数是一个 ...
- 【编程工具】Sublime Text3的安装和常用插件推荐
本人刚刚学习 HTML,曾经上网找过一些编写 HTML 的软件,但感觉都不太好,经过三挑四选下,最终我决定选择 Sublime Text3 这款软件来作为学习工具,上网找到了许多实用的插件,在这里给大 ...
- EasyUI 动态生成列加分页
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat=&qu ...
- OpenJ_Bailian——4115鸣人和佐助(带状态的A*)
鸣人和佐助 Time Limit: 1000MS Memory Limit: 65536KB 64bit IO Format: %I64d & %I64u Submit Status Desc ...
- LightOJ——1066Gathering Food(BFS)
1066 - Gathering Food PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB W ...
- 【2018.11.23】2018WCTest(8)
T1 小 $X$ 无敌就是指他的防御 $\ge$ 怪物的攻击 $n$.另外小 $X$ 最多只需要把攻击加到怪物的防御 $k$,此时已经能一招秒一个,再多加必定无用且需承受更多伤害. $20$ 分 $d ...
- java system.out.printf()的使用方法
package test; public class Main { public static void main(String[] args) { // 定义一些变量,用来格式化输出. double ...