使用最新API获取UIContext,上下文 鸿蒙发展很快,转眼API16,modelVersion5.1.1就已经到来了。...很多API在18被废弃了,接下来我们看看有哪些 getContext(this)(已经被废弃了) 我们需要使用UIContext获取UIContext实例进而得到上下文。...请使用上面作者使用的方法,即可(避免报错无法运行程序) 2.其他API迁移示例 1. promptAction.showToast(),API在最新版中已经废弃了,使用下面示例API即可 //旧版API...2. router.replaceUrl(),API在最新版中已经废弃了,使用下面示例API即可 //旧版API(已被废弃) router.replaceUrl({ url: 'pages/Index'...promptAction.showDialog(),API在最新版中已经废弃了,使用下面示例API即可 //旧版API(已经被废弃) await promptAction.showDialog({
alt yii2框架内置是支持restful规范的,按照yii2的规则做我们可以轻松实现比如数据表数据的获取、插入、更新、删除等基础操作以及登录验证等功能。...也就是说我省了很多事情~~,当然我们还是需要简单配置的,这个配置主要是urlManager及模块控制器的继承问题。...对于一般的restful规则的yii2路由配置如下图 alt 红色框内的代表一个标准restful中控制器路由规则,绿色框内是你必须要填写的,其他的except、pluralize、extraPatterns...在我们设置了urlManager后,yii2就变得智商满满了,当过来一个 GET xgh.nai8.me/xcx/albums 请求后,yii2知道这是一个要获取资源结果集的请求,则会去调用xcx模块下的...小提示:在兄弟连PHP原创视频中对这个原理也进行了详细的解析(《Yii2的RESTful讲解》第三节) 配置控制器 urlManager配置完成,接下来就是写一个控制器了,老沙对此很熟悉,不就是一个继承问题么
Yii2 使用 RESTful?...下面以v2中的文件为例: 创建一个控制器类 api\modules\v2\UserController 如下, namespace api\modules\v2\controllers; use...通过指定 yii\rest\ActiveController::modelClass作为api\modules\v2\models\user\UserBaseInfo, 控制器就能知道使用哪个模型去获取和处理数据...配置另外的: 'controllerNamespace' => 'api\controllers', 'components' => [ 'user' => [...于是我们就可以通过方法地址获取想要的数据:GET http://www.api.com/users G M T Detect
yii2目前还处于beta版本,相关文档也一直在变化,如有疏漏,还请及时反馈 Yii2安装 两种安装方式,composer或者下载zip包 使用composer安装初始化yii2项目(推荐)...的框架源文件,然后根据自己的实际情况构建目录结构,进行开发 项目初始化完成以后,配置yii2的配置文件,配置文件一般放在app/config目录下,当然这个路径会根据个人习惯而不同] 我个人推荐的yii2...assets管理定义 commands/ 命令行工具(controller) config/ 应用程序配置 controllers/...web controller目录(控制器) views/ 应用views目录(视图) models/ models classs 目录(模型)...vendorPath的路径 环境要求 PHP 5.4 以上 其他要求运行 php requirements.php监测 nginx虚拟机配置 使用此配置时,注意设定php.ini的一个参数值 cgi.fix_pathinfo
为什么使用过滤器 通常情况下,过滤器将代码绑定到所有的操作上,也就是说,每一个操作的执行,都需要先或后执行过滤器,所以,可以用来执行权限检测、缓存处理等事情 在哪里使用过滤器 在控制器中,定义: public...过滤器位置.png 定义过滤器 在Yii2中,自定义过滤器,需要继承 yii\base\ActionFilter 类并覆盖 yii\base\ActionFilter::beforeAction() 和...创建模型.png 创建控制器,实例化表单模型和渲染视图 ? 创建控制器.png 视图中使用ActiveForm创建表单元素 ? 创建元素表单.png 在控制器中接收表单数据并绑定数据到表单模型 ?...,在Yii2中,不需要自己去写验证,直接在表单模型的 rules 中调用 captcha 验证就可以了 ['verifyCode','captcha'], 数据分页 Yii2也提供了类似于TP的数据分页类...) { //获取页码,参数需和Pagination中配置的参数一致 $page=Yii::$app->request->get("page");
,在开发阶段可以通过配置来避免这个问题,尤其是开发移动端页面的时候特别有用。...bug,这需要你在一个yii2生命周期内持续的观察某些变量的值及赋值路径,具体配置可以参考我之前的课程, 用xdebug支持yii2调试之 - PhpStorm配置篇 当然,yii2自己的debug扩展也极其有用...开发中 本段为你介绍我在yii2开发中一些习惯和小技巧,希望对你有用。...模型的重要性 很多yii2的初学者喜欢将大量逻辑写到控制器的动作(action)中,这是不对的,我们的重点应该在模型中,而控制器仅仅是做输入输出。 我们拿关联举个例子,下面的这段代码是不好的。...当然从理念上说也有点不同 行为 一些类附加的属性 父类 一些类共同的属性 我的用法(不一定就是对的),尤其在模块中我喜欢为控制器增加一层父类。
,建议在pages/index/index.js中添加。...当服务器端进行了存储后要生成一个key,将其返给小程序,以后小程序凡是发起需要用户认证的请求,都带这个key用来判断用户身份,在yii2中,这个key就是我们restful中的access_token。...客服消息 在小程序开发中,客服消息的重要性不言而喻,它除了作为客服服务外,还作为小程序到微信浏览器的一个渠道,比如本次在「宝宝爱识图」的开发中,我用它来实现将收款微信号到用户的推送工作,这主要是解决在ios...让yii2能解析json的请求内容 默认情况下yii2并不能识别请求中的json格式,而我们小程序在发起请求时喜欢用它,因此我们要对yii2进行一下配置。...在yii2的restful中的用户认证使用了行为机制,我们来看下流程代码 // 在需要授权的控制器内 class CardController extends ActiveController {
1.首先把代码上传到linux配置的目录中(如:/www/你的站点目录(如: /www/wwwroot/my.com/)) 2.cd /www/你的站点目录( 如:/www/wwwroot/my.com.../init 选择生产环境(0:开发环境,1:生产环境) (进行项目初始化,会给项目相应的权限否则无法访问) 3.比如我的项目在 /www/wwwroot/my.com 配置前台项目(如: /www/wwwroot...-d # otherwise forward it to index.php RewriteRule . index.php 这样一来,你就可以隐藏路径中的index.php了 三、配置 rules...> //这是指匹配控制器内的方法 //这里指获取相应的请求参数的key \Yii::$app->request->get('pid'); 如果希望添加后缀.html 1 2...2.参数中的\d+代表匹配数字 如果你的想是字符串 那么请修改成\w+ 如果想修改成匹配固定的控制器或者方法,请参考下面配置 1 2 3 'rules' => [ '<controller
前言 在项目中,推荐使用 Yii2 内置的 URL 工具类生成链接,这样可以非常便捷的管理整站的 URL 行为:比如通过修改配置改变整站的URL格式等。...未启用子模块的 URL 格式: // 参数 r 中的 article 表示控制器, view 表示动作 在不改变源码的情况通过配置即可美化整站的 URL URL 管理器 URL 管理器是一个名叫 urlManager 的内置应用组件。...在 WEB 应用和控制台应用中以通过以下两种方式创建 URL: \Yii::$app->urlManager->createUrl($params) \Yii::$app->urlManager...r=kernel/article/list-hot echo Url::toRoute('list-hot'); // 从别名中获取 URL // 显示:<a rel="nofollow" href
TP中的各个对象没有明显的继承关系。各自为类,定义不同的属性以及方法。 2、Yii2架构组织明确,同一类的对象必定有一个父类,在父类中定义相同的方法。...类中定义,同时通过抽象方法的形式定义控制器必须实现的方法。...在TP5中,普通控制器提供一个tink\Controller对象,同时,框架也允许在应用中的控制器可以不继承think\Controller。...create_time 在数据库中设置自动获取当前时间戳。...难道TP要让人家插入一条数据库在查询一次去获取数据吗? 时间差不多,后续接着更新。欢迎大家关注。
Yii2框架为我们自定义好的 controllers,Models,views,标准的MVC结构框架,但是有些时候我们写接口希望结构更加清晰而不希望与其他控制器放在一起,想自定义文件夹作为API的控制器类...,下面就介绍利用yii的controllerMap来自定义我们的API控制器。...'; } } 在frontend/config/main.php配置 ?...' ]], 访问我们的API控制器: ?...已经完成了自定义的控制器配置 我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?
基础总结 1.修改默认控制器/方法 yii默认是site控制器,可以在web.php中设置$config中的'defaultRoute'='xxxx';使用自定义默认的控制器。...yii的默认方法是index,可以在vender/yiisoft/yii2/base/Controller.php 中进行初始设置,也可以在控制器中改写defaltAction='action'。...5.布局模式 yii会默认开启布局模式,其布局模板为view中的layout中的main.php,我们可以在veder/yiisoft/yii2/web/controller.php基础类中public...$layout属性修改模板文件的配置。...在ActiveForm中如果数据表中有了此字段,就不要再用public声明一个属性了,会导致attribute无法赋值。。。。(血泪)。
例如:单元测试(Unit Testing);对象关系映射 (ORM);包系统(A Packaging System);轻量级 Blade 模板引擎(Lightweight Blade);RESTful 控制器...Laravel的优势:易于学习;无缝数据迁移;在 PHP 社区中很受欢迎;MVC 架构支持;大量培训材料(文档、图像和视频教程);模板引擎;简单的单元测试等。...2、Yii2 Yii2是一个基于组件的高性能 PHP 框架,基本能提供PHP 框架中的所有特性,因其安全功能而受到网站开发人员的欢迎,并且具有极好的可扩展性,当程序员需要确保可扩展性并开发高效、易于维护的...与其他框架相比,Phalcon(在最流行的 PHP 框架中)使用的资源非常少,从而可以快速处理 HTTP 请求。...使 Symfony 成为 PHP 框架中独一无二的特性之一是它的可重用 PHP 组件。使用可重用组件,开发时间减少了许多模块,如表单创建、对象配置、模板等。可以直接从旧组件构建,节约了大量成本。
注意坑: 1.pjax必须包含使用到的所有js,也就是在页面中被应用到的pjax,都要被包含,否则js会在第一次执行pjax后失效 试图层 use yii\widgets\Pjax; yii2框架自带的pjax,不需要额外的代码 pjax的一些配置 false]); ?...> 你也可以选择配置哪个链接和form表单使用Pjax,是否将新的Url添加到浏览记录,替换或者保持原样。如果Pjax没有响应,超时之后页面将会重新加载。...,整个页面刷新会跳转页面的问题 pjax中的局部刷新中,改变了地址栏中的url改变了,当整个页面刷新时,整个页面跳转了,有没有什么好的解决办法,求具体代码?...解决: 1.可能是pjax获取数据超时导致的默认行为:直接访问a标签。
yii2在使用的时候,访问控制器的时候,如果控制器的名称是驼峰命名法,那访问的url中要改成横线的形式。...刚开始以为YII2中肯定有这样的设置,然后就去google了下,发现都说不行,自己去看了下,果然,框架里面直接是写死的:(源码)\vendor\yiisoft\yii2\base\Controller.php...由于我们的项目用的事yii2的advanced版本,并且里面有多个项目,还要保证其他项目使用正常(也就是个别的控制器才需要使用驼峰命名的方式访问),这也容易: 我们可以写个components处理:\common...是需要用驼峰命名形式访问的控制器中,继承下这个zController就可以了, ? <?php /** * Created by PhpStorm....Access-Control-Expose-Headers' => ['X-Pagination-Current-Page'], ], ]; //配置
我们返回头再整体回顾下 YII2 框架,你会发现在 YII2 官方的默认模版中,View 层还是占有很大的比重。...在 YII2 社区中安装 YII2 版本的讨论中,经常有一个 View asset 扩展安装的难题,核心就是前端页面元素与后端服务的耦合的问题,以及版本依赖的冲突。...API 简单概括 “现在我们使用 YII2,就是在使用它构建 API 的能力。...YII2 入口文件及环境配置.png 根据组件分拆配置文件,实现组件和模块的按需加载。...在应用程序开发中,前端这个职位是从后端细化和演变而来的,前后端分离和独立就是技术的趋势。 首先技术层面的技术选择和生态,其次职位的前端工程师和后端工程师区分,在者部门的设立原则前端部门和后端部门。
yii2默认url方式为 .../index.php?r=控制器/操作方法 这里修改成:....../控制器/操作方法 需要在nginx1.16中配置nginx.conf 在yii2配置文件中相关配置 经过系统测试
首先我们介绍一下Controller类的render()方法的执行流程,需要查看vendor\yiisoft\yii2\base\Contorller.php文件中的render()方法源代码。...在renderController()方法中首先调用findLayoutFile()方法,渲染出布局文件,然后调用View类的renderFile()方法,完成局部文件和使徒的渲染。...开始应用级布局 在一个应用中多个控制器使用一个布局文件,那么可以在应用级配置文件config/web.php中设置yii/base/Application的$layout属性,代码如下: $config...'viewPath' => 'xxx', ]; 配置文件config/web.php中的“viewPath”是yii\bash\Application类的属性.该类继承了yii\base\Module类...,在Module类中定义了getViewPath()和setViewPath()方法,来获取和设置视图文件路径,代码如下所示: //所在文件路径vendor\yiisoft\yii2\base\Application.php
哈喽,大家好,我是PHP学习网站长,一个混迹于互联网,至今仍然在挣扎的程序员,我会持续为大家分享所学技术领域优质开源项目。 若您喜欢此公众号,请记得星标哦,您将第一时间收到我们优质内容的更新!...在向大家推荐一款yii2的cms后台框架,这个框架写的还是相当不错的,包含了用户中心,权限,同时还集成了api接口,方便对外做应用,下面是详细的介绍。...本框架基于YII2+Layui,后端主要集成了如下功能: RBAC权限控制 前台用户管理 系统参数配置 系统访问日志 系统目录结构 api assets/ 资源发布文件...接口V1 controllers 控制器 views 视图文件 Module.php 模块 runtime/...4、导入数据库文件,数据库文件在yii2cms下的yii2_cms.sql,直接到如即可 5、修改数据库配置,配置文件如下所示 6、配置本地memcache服务,由于用到配置文件,所以用memcache
哈喽,我是老鱼,一名致力于在技术道路上的终身学习者、实践者、分享者! Leadshop是一款免费商城系统,基于Yii2开发,支持composer,优化核心,减少依赖,基于全新的架构思想和命名空间。...前端技术栈为ES6、vue、vuex、vue-router、vue-cli、axios、element-ui、uni-app,后端技术栈有Yii2、Jwt、Mysql、Easy-SMS。...采用了标准RESTful API ,高效的API阅读性,具有扩展性强、结构清晰的特点 主要特点 基于命名空间和PSR-4规范,加入PHP7新特性 核心功能模块化,方便开发和维护 强化路由功能,采用RESTful...接口标准 灵活创建模型控制器,易于扩展开发 配置文件可分离,方便管理 重写的自动验证和完成 简化扩展机制,提升开发速度 API支持完善,方便二次开发 内置WeChat微信开发框架,微信接入更加快捷,简单...中,需要在.htaccess中添加 SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 设置代码执行目录为/server/web。