yii1和yii2的区别有哪些?
发布时间 - 2019-12-23 00:00:00 点击率:次yii是一个高性能的php5的web应用程序开发框架。通过一个简单的命令行工具 yiic 可以快速创建一个web应用程序的代码框架,开发者可以在生成的代码框架基础上添加业务逻辑,以快速完成应用程序的开发。
Yii2.0 版框架是完全重写的
,在 1.1 和 2.0 两个版本之间存在相当多差异。【推荐学习:Yii入门教程】
那么yii1和yii2的区别有哪些?
Yii 2.0 需要 PHP 5.4 或更高版本,该版本相对于 Yii 1.1 所需求的 PHP 5.2 而言有巨大的改进。
1、应用程序实例直接使用全局命名变量来访问:$app,而无须调用app()。
2、Yii2在视图层的一个显著改变是引入了视图类,这样在MVC模式实现上更为完整。相应的,相关展现层附属类就由新的视图类来接手管理,比如theme:Yii::app()->theme->baseUrl 应该更新为 Yii::$app->view->theme->baseUrl,或者$this->theme->baseUrl。
3、Yii2引入了资源包的概念,资源引用的方式变化较大。
有两种方式引入资源,一种是通过assets目录下的AppAsset类,还有就是通过类似Yii1种的注册方法。
Yii::app()->getClientScript()方法不再可用,比如想要在页面中动态注册JS脚本文件,变动如下:
Yii::app()->getClientScript()->registerScriptFile('...') 修改为 Yii::$app->view->registerJsFile('...'),
或者$this->registerJsFile('...')。
4、使用数据库
比如查询知道user_id的一条记录记录
yii1:
User::model()->find('user_id=:user_id',[':user_id'=>$user_id]);
yii2:
User::find()->where('user_id=:user_id',[':user_id'=>$user_id])->one();
查询多条记录:
yii1:
User::model()->findAll('status=:status',[':staus'=>$status]);
yii2:
User::find()->where('status=:status',[':staus'=>$status])->all();
另外yii2 还提供了 asArray() 方法,直接查询结果为数组:
User::find()->where('status=:status',[':staus'=>$status])->asArray()->all();
如果是初学者的话,建议直接学习yii2。
# yii
# 应用程序
# 是一个
# 基础上
# 要在
# 引入了
# 重写
# 有两种
# 相对于
# 高性能
# 查询结果
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
用v-html解决Vue.js渲染中html标签不被解析的问题
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
如何快速查询域名建站关键信息?
如何解决hover在ie6中的兼容性问题
Laravel用户密码怎么加密_Laravel Hash门面使用教程
独立制作一个网站多少钱,建立网站需要花多少钱?
Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理
如何用AWS免费套餐快速搭建高效网站?
,怎么在广州志愿者网站注册?
作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】
制作企业网站建设方案,怎样建设一个公司网站?
南京网站制作费用,南京远驱官方网站?
Laravel如何实现API版本控制_Laravel API版本化路由设计策略
Windows驱动无法加载错误解决方法_驱动签名验证失败处理步骤
魔毅自助建站系统:模板定制与SEO优化一键生成指南
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
如何利用DOS批处理实现定时关机操作详解
iOS正则表达式验证手机号、邮箱、身份证号等
七夕网站制作视频,七夕大促活动怎么报名?
Python函数文档自动校验_规范解析【教程】
JS碰撞运动实现方法详解
什么是javascript作用域_全局和局部作用域有什么区别?
如何制作一个表白网站视频,关于勇敢表白的小标题?
Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程
Android自定义控件实现温度旋转按钮效果
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
javascript中对象的定义、使用以及对象和原型链操作小结
网易LOFTER官网链接 老福特网页版登录地址
微信推文制作网站有哪些,怎么做微信推文,急?
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
如何在建站之星网店版论坛获取技术支持?
html5如何实现懒加载图片_ intersectionobserver api用法【教程】
PythonWeb开发入门教程_Flask快速构建Web应用
JavaScript中的标签模板是什么_它如何扩展字符串功能
如何快速上传自定义模板至建站之星?
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】
北京网站制作公司哪家好一点,北京租房网站有哪些?
Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】
网站建设整体流程解析,建站其实很容易!
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
Laravel怎么在Controller之外的地方验证数据
C++用Dijkstra(迪杰斯特拉)算法求最短路径
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
如何在宝塔面板中修改默认建站目录?
长沙企业网站制作哪家好,长沙水业集团官方网站?
JavaScript中如何操作剪贴板_ClipboardAPI怎么用
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
javascript中的try catch异常捕获机制用法分析

