欢迎光临
感谢一路有你

yii2 学习基础笔记

如果你对该文章中的内容有疑问/不解,可以点击此处链接提问
要注明问题和此文章链接地址 点击此处跳转
 
	参考文档
		http://www.yiichina.com/doc/guide/2.0
	下载composer
	安装yii2
		https://packagist.org/packages/yiisoft/yii2-app-basic
		//安装插件,可以瞎子啊静态的文件
		composer global require "fxp/composer-asset-plugin:~1.0.0"
		//获取github token值
		https://github.com/settings/tokens

		//安装composer
			///--prefer-dist  下载压缩版
		composer create-project  yiisoft/yii2-app-basic yii --prefer-dist    

	压缩包安装
		压缩包安装  需要在web.php  cookieValidationKey 随机设置字符串


	目录结构
		composer.json  composer配置文件
		config/
			console.php 控制台应用配置信息
			web.php     web应用配置信息
		commands/      包含控制台命令类
		controllers/    控制器类
		models/         模型类
		runtime/      
		vendor/        composer包
		views/         视图文件
		web/		web应用目录
			assets/		静态资源文件
			index.php     入口文件
		yii         命令执行脚本


 
定义全局函数 
	/helper/function.php
		在文件中定义函数
	打开入口文件 index.php
		require(__DIR__.'../helper/function.php');
	
 

获取参数
	get
		$request = \Yii::$app->request;
		$id = $request->get('id',1);//给个默认值1
	post
		$uu = $request->post('uu','aaaa');//给个默认值aaaa

	$request->isGet;
	$request->isPost;
	$request->userIp;//获取用户的IP


控制器分配数据
	return $this->renderPartial('index');
	return $this->renderPartial('index',['data'=>$data]);

	输出  <?php echo $data; ?>

compact
	$user = [.....];
	$article = '';
	return $this->renderPartial('index',compact('user','article'));
	return $this->render('index',compact('user','article'));

	//render 输出父模板的内容
	//renderPartial   输出本次渲染的内容
	定义父模板(c)
		public $layout = "home"  //layout/home
	模板之间的相互调用
		<?php echo $this->render('about'); ?>




字符串过滤
	use \yii\helpers\Html;
	use \yii\helpers\HtmlPurifier;
	<?php Html::encode($user->name); ?>  //转为实体
	<?php HtmlPurifier:process($post->text); ?> //彻底过滤


模型的创建
	数据库的修改
		config/db.php
	模型
		use app\models\User

		$sql = "selecy * from user where uid = ".$id;
		User::findBySql($sql)->all();

	防sql注入
		selecy * from user where uid = 1
		selecy * from user where uid = 1 or 1=1  //查询出全部
		selecy * from user where uid = 1 ;drop table user;--   //删除user表

		$sql = "selecy * from user where uid = :id";
		User::findBySql($sql,[':id'=>$id])->all();


	model
		查看
			//获取所有数据
			$data = User::find()->all();
			$data = User::find()->>where(['id'=>1])->all();
			$data = User::find()->>where(['>','id',3])->all();
			$data = User::find()->>where(['between','id',3,9])->all();
			$data = User::find()->>where(['like','title','我名字'])->all();
			
			$data = User::find()->>where(['id'=>1])->one();
			$data = User::findOne(5);//id=
			$data = User::findAll([3,5,7,9]);

			转换为数组
			$data = User::find()->>asArray()->all();

			//分批次获取数据,减缓内存压力
			foreach(User::find()->batch(10) as $article){
				$data[] = $article;
			}


		添加
			$article = new Article();
			$article->title = 'sssssss';
			$article->num = 10;
			$data = $article->insert();
			$data = $article->save();
			获取id
			$id = $article->attributes['id'];


		 修改
			$article = User::findOne(5);//id=
			$article->title = '';
			$data = $article->updata();
			$data = $article->save();

			自增
			Article::updateAllCounters(['num'=>1],['id'=>8]);


		删除
			$article = User::findOne(5);//id=
			$article ->delete();

			Article::deleteAll();
			Article::deleteAll('id=11');
			Article::deleteAll('id>:id and num < :num',[':id'=>13,':num'=>100]);

一对多查询
	
	$list = $category->hasMany('app\models\Article',['cate_id'=>'id'])->all();
	$list = $category->hasMany(Article::className(),['cate_id'=>'id'])->all();

	$article = Article::find->with('category')->asArray()->all()

 

赞(0) 打赏
未经允许不得转载:王明昌博客 » yii2 学习基础笔记
分享到: 更多 (0)

相关推荐

  • 暂无文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

×
订阅图标按钮