201607-07 Yii2.0 ActiveForm用法详解 ActiveForm实例下面实例中几乎涵盖ActiveForm的所有用法,对应于代码下面有效果图,至于如何修改表单的结构来实现我们所需求的样子,请看上面的相关教程<?phpuseyiiootstrapActiveForm;useyiihelpersHtml;$this->title='编程学习';?><divclass="row"><divclass="col-lg-9"><?php$form=ActiveForm::begin(['id'=>'form-signup']);?><?=$form->field($model,'test1')->label('测试Label')?>... 继续阅读 >
201607-07 Yii2.0经常调用的常量、变量、方法、函数 <?phpdefined('YII_DEBUG')ordefine('YII_DEBUG',true);//当在调试模式下,应用会保留更多日志信息,如果抛出异常,会显示详细的错误调用堆栈。因此,调试模式主要适合在开发阶段使用,YII_DEBUG默认值为false。return$this->render('list');//加载视图模板,一定要return否则会空白$this->render('_overview');//在视图模板中,可以通过这种方式加载视图模板//######################... 继续阅读 >
201506-28 Yii2.0 框架下载 下载Yii是在BSDLicense下发布的一个开源项目。这意味着您能免费使用它开发开源或私有的Web应用程序。Yii目前有两个主要的版本:2.0和1.1。Yii2.0Yii2的最新版本是 2.0.4,发布于 2015年5月10日。Yii2.0在PHP5.4.0版本以上完全重写了Yii。它的目的是成为一个最先进的新一代的PHP开发框架。Yii2.0不兼容1.1。完整更新日志升级说明有两种方式安装Yii2:使用Composer,或者下载一份应用程... 继续阅读 >
201506-20 Yii1 rules常用规则大全 public function rules(){ return array( //必须填写 array('email,username,password,agree,verifyPassword,verifyCode', 'required'), //检查用户名是否重复 array('emai... 继续阅读 >
201506-20 Yii2.0 整合elfinder图片管理器调用方法 Yii2扩展:https://github.com/MihailDev/yii2-elfinder教程虽然是俄语,不用怕,按代码来就行步骤:1、使用composer安装扩展composerrequire--prefer-distmihaildev/yii2-elfinder"*"2、加入配置信息,我是Yii2高级模版,在后台中使用,所以打开backend/config/main.php配置文件与'components'同级添加'controllerMap'=>['elfinder'=>['class'=>'mihaildev\elfinder\PathController','access'=>['@'],'root'=... 继续阅读 >
201505-08 选择Yii 2.0版本框架的7个理由 本文作者MatthewBeaumont是一位PHP开发者,曾与LAMP有8年的合作关系,业余时间在卡耐基音乐厅,林肯中心,无线电城音乐厅等地的管弦乐团扮演专业的打击乐乐手。去年年底,SitePoint发表了一篇文章,着重强调了一些顶级的PHP框架,当时并列排名第四的是Yii(发音Yee)框架,最新版本为1.1.14。最近,Yii发布了2.0版本。然而对它进行报导的时候,它还处在RC状态,如今刚好完整新版本发布,我觉得是时候重新考虑一下选择... 继续阅读 >
201503-26 常用设计模式之迭代器模式及其PHP实现(Yii框架) 迭代器模式是一种行为型模式,它是一种最简单也最常见的设计模式。它可以让使用者透过特定的接口巡访容器中的每一个元素而不用了解底层的实际操作。适用性在希望利用语言本身的遍历函数便利自定义结构时,例如PHP中的foreach函数类图PHP实例<?phpclasssampleimplementsIterator{private$_items;publicfunction__construct(&$data){$this->_items=$data;}publicfunctioncurrent(){... 继续阅读 >
201501-27 Yii框架中使用CHtmlPurifier过滤文本内容防止XSS攻击 1、在控制器中使用:publicfunctionactionCreate(){$model=newNews;$purifier=newCHtmlPurifier();$purifier->options=array('URI.AllowedSchemes'=>array('http'=>true,'https'=>true,),'HTML.Allowed'=>'div',);if(isset($_POST['News'])){$model->attributes=$_POST['News'];$model->attributes['content']=$purifier... 继续阅读 >
201501-27 Yii中后台使用session防止重复提交及灌水 1、从前端的角度:增加遮罩2、从后端的角度:使用session$session=Yii::app()->session;$user_id=Yii::app()->user->id;$sessionKey=$user_id.'_is_sending';if(isset($session[$sessionKey])){$first_submit_time=$session[$sessionKey];$current_time=time();if($current_time-$first_submit_time<10){$session[$sessionKey]=$current_time;$this->response(array('status'=>1,'... 继续阅读 >
201501-27 Yii2.0教程入门篇 —— 安装配置 说明:Yii2.0需要PHP5.4+版本下载&安装:使用Composer安装composerglobalrequire"fxp/composer-asset-plugin:1.0.0-beta4"composercreate-project--prefer-distyiisoft/yii2-app-basicbasic下载文件安装下载地址:http://www.yiiframework.com/download/或者从github下载最新版本:https://github.com/yiisoft/yii2解压下载到的压缩文件,进入apps/basic/config/web.php,修改cookieValidationKey://!!!insert... 继续阅读 >
201501-27 Yii2.0教程入门篇 —— 运行应用 应用框架:basic/应用根路径composer.json被Composer调用,描述包信息config/包含应用及其它配置console.php控制台应用配置web.phpweb应用配置commands/包含控制台命令类controllers/包含控制器类models/包含模型类runtime/包含Yii在运行时生成的文件,比如日志和缓存文件vendor/... 继续阅读 >
201501-27 Yii2.0教程入门篇 —— 测试实例 本章节讨论如何在应用中创建“Hello”页面创建Action在controllers/SiteController.php中:<?phpnamespaceapp\controllers;useyii\web\Controller;classSiteControllerextendsController{//...existingcode...publicfunctionactionSay($message='Hello'){return$this->render('say',['message'=>$message]);}}创建视图在views/site/say.php中:<?phpuseyii\helpers\Html;?><?ph... 继续阅读 >
201501-27 Yii2.0教程入门篇 —— 使用表单 创建Model:models/EntryForm.php<?phpnamespaceapp\models;useyii\base\Model;classEntryFormextendsModel{public$name;public$email;publicfunctionrules(){return[[['name','email'],'required'],['email','email'],];}}创建Action:<?phpnamespaceapp\controllers;useYii;useyii\web\Controller;useapp\models\EntryForm;classSiteControl... 继续阅读 >
201501-27 Yii2.0教程入门篇 —— 使用数据库 准备好数据库:新建一个数据库yii2basic,然后在其中创建一张表:CREATETABLE`country`(`code`CHAR(2)NOTNULLPRIMARYKEY,`name`CHAR(52)NOTNULL,`population`INT(11)NOTNULLDEFAULT'0')ENGINE=InnoDBDEFAULTCHARSET=utf8;INSERTINTO`country`VALUES('AU','Australia',18886000);INSERTINTO`country`VALUES('BR','Brazil',170115000);INSERTINTO`country`VALUES('CA','Canada',114700... 继续阅读 >
201501-27 Yii2.0教程入门篇——使用Gii生成代码 开启Giiconfig/web.php:$config=[...];if(YII_ENV_DEV){$config['bootstrap'][]='gii';$config['modules']['gii']='yii\gii\Module';}在web/index.php中设置YII_ENV_DEV:defined('YII_ENV')ordefine('YII_ENV','dev');如果是从非localhost访问需要在配置文件中作如下设置:'gii'=>['class'=>'yii\gii\Module','allowedIPs'=>['127.0.0.1','::1','192.168.0.*','192.168.178.20']//... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 结构概述 Yii应用参照模型-视图-控制器(MVC)设计模式来组织。模型代表数据、业务逻辑和规则;视图展示模型的输出;控制器接受出入并将其转换为模型和视图命令。除了MVC,Yii应用还有以下部分:入口脚本:终端用户能直接访问的PHP脚本,负责启动一个请求处理周期。应用:能全局范围内访问的对象,管理协调组件来完成请求.应用组件:在应用中注册的对象,提供不同的功能来完成请求。模块:包含完整MVC结构的独立... 继续阅读 >