![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
YII学习日志
Morven
这个作者很懒,什么都没留下…
展开
-
YII2 Redis 常用的
安装php composer.phar require --prefer-dist yiisoft/yii2-redis配置'redis' => [ 'class' => 'yii\redis\Connection', 'hostname' => 'localhost', 'port' => 6379, 'database' => 0,],如果缓存使用的话,修改为下面的配置'cache' => [ .原创 2021-10-16 15:43:06 · 301 阅读 · 0 评论 -
一个PHP图像处理的类
功能主要是用来给一个模板上添加相关的图片或文字元素用的,如海报的生成,证书生成之类的<?phpnamespace app\components;use Yii;class Watermark{ //生成路径 public $path; //水印文字 public $watermark_string; /** * 合并图片, * @param $watermark_path * @param $background_pa原创 2021-08-17 11:11:28 · 149 阅读 · 0 评论 -
CButtonColumn详解
CGridView是Yii中的一个灵活的插件,例如它使用CButtonColumn来为每行生成按钮.在这里我们会介绍怎么根据需求自定义按钮.默认按钮默认情况下 CButtonColumn 包含三个按钮:{查看(view)},{更新(update)}和{删除(delete)} ,它们的含义是显而易见的.自定义它们的外观和行为的最简单的方法是使用CButtonColumn的属性,如转载 2013-03-04 13:26:23 · 2861 阅读 · 0 评论 -
Yii连接mssql 数据库配置
// PDO MSSQL'db'=>array( // 'class'=>'application.components.MyMsSqlConnection', // old MS PDO + MSSQL 2000: //'connectionString' => 'mssql:host=HOSTNAME\SQLEXPRESS;dbname=Client',原创 2013-01-29 10:19:24 · 5351 阅读 · 0 评论 -
yii实现定时更新sitemap方法
* 分类少一次读出,商品太多,每200跳转一次, 用crontab访问一次即更新 */ /* 如果使用,文中的xml格式最好不要改,控制器输出的时候加上xml头 */ /* author: kyoralk */ public function actionSiteMap() { $xml_file= '../theme转载 2013-01-03 10:32:02 · 1920 阅读 · 0 评论 -
CListView 隔行变色
Yii 中的CGridview 很好用,但是有时候不能满足我们的高制定性,这个时候更加灵活的CListView 就可以帮助我们解决这些问题。CListView 本身处理方式为,在一个总的页面中写入你需要的数据,之后在一个模板页中来制定你每一条数据怎么处理!如果我要每隔行修改一下样式要怎么处理呢在itemView 属性public string $itemView原创 2012-12-13 18:12:46 · 1145 阅读 · 0 评论 -
Yii框架拓展之JUI 轻松做TAB标签
CJuiTabs显示一个选项卡部件。 CJuiTabs封装了JUI tabs 插件。 示例:在view中添加如下代码<?php $this->widget('zii.widgets.jui.CJuiTabs', array( 'tabs'=>array( '选项卡 1'=>'内容1', '选项卡 2'=>array('content原创 2012-12-12 15:17:54 · 3760 阅读 · 0 评论 -
yii jquery折叠、弹对话框、拖拽、滑动条、ol和ul列表、局部内容切换
//yii折叠效果(CJuiAccordion)$this->widget('zii.widgets.jui.CJuiAccordion', array( 'panels'=>array( '分类1'=>'分类1的内容', '分类2'=>'分类2的内容', // 分类可以渲染一个页面,例如分类3转载 2012-12-12 15:13:41 · 1413 阅读 · 0 评论 -
yii如何使用事务,begin,commit,rollback
我们在数据库的使用中, 经常是使用事务的操作来保证数据的一致性, 那么在Yii中, 怎么使用事务呢, 其实很简单.$transaction= Yii::app()->db->beginTransaction();//创建事务$transaction->commit();//提交事务$transaction->rollback();//回滚事务// 以下实例将需要事务处理的操作放转载 2012-12-12 14:42:51 · 16254 阅读 · 0 评论 -
YII+DWZ,SESSION超时后采用DWZ的弹窗登陆模式
CWebUser已经提供了ajax和直接访问不同的处理方式,而DWZ中的navTab和dialog链接方式实为ajax获取模式。所以关于标题的需求实现起来相当简单:修改config配置文件,在'components'中'user'添加如下配置:'loginRequiredAjaxResponse'=>'{"statusCode":"301","message":"登陆超时,请重新登陆!"}转载 2012-12-12 14:40:42 · 2459 阅读 · 0 评论 -
YII+DWZ,修改开源作者的DwzPager和dwz.navtab.js,改用GET搜索和换页
是,当搜索与显示页数同时非默认值时,会出现页数失效的BUG,例:目前默认每页显示10条,然后我选择了每页显示5条,页面刷新生效,但当我进行搜索后,页面又回到每页10条的状态。解决该问题请统一使用GET方法:1、controller中列表页改为以GET形式获取: if(isset($_GET['numPerPage'])) { Yii::app()->use转载 2012-12-12 14:36:35 · 2168 阅读 · 0 评论 -
YII+DWZ扩展
扩展下载地址http://www.yiiframework.com/extension/dwzinterface安装1、复制dwz到应用的ext目录下。并在config/main.php中配置'modules'=>array( 'admin', 'gii'=>array( 'class'=>'system.gii.giiModule',原创 2012-12-12 14:34:20 · 2475 阅读 · 0 评论 -
YII+DWZ,制作了DwzActiveForm,用于自动把Yii的rules与dwz已整合的validate结合
YII自带validate.js的验证,但我细读源码,发现其规则主要是提交后返回的,而DWZ整合validate.js是直接在提交时客户端验证,更为方便有效率。model中定义的rules已经把属性的要求都写清楚,如果再为了validate又在view里手写一次,实在是麻烦,所以我有了写DwzActiveForm的想法。1、在Yii源码中找到CActiveForm,复制出新的Widge转载 2012-12-12 14:31:16 · 1968 阅读 · 0 评论 -
YII+DWZ框架,使用swfupload实现上传
DWZ已整合uploadify,但也许是uploadify的swf文件对yii的url美化不支持,设某php文件为上传处理文件,一切正常,但因为涉及权限,我必须把上传处理放在某控制器某动作里(如upload控制器里的image动作:index.php/upload/image),于是悲剧发生了,uploadify不知道是找不到处理文件还是怎样,无穷无处的302错误,网上传得最开的是改.htacce转载 2012-12-12 14:32:11 · 2330 阅读 · 0 评论 -
Yii Framework中验证码的使用与验证不正确错误
控制器代码public function actions(){ return array( // captcha action renders the CAPTCHA image displayed on the contact page 'captcha'=>array( 'class'=>'C原创 2012-12-11 10:55:05 · 4460 阅读 · 0 评论 -
yii的relations方法的使用
通过在 relations() 中声明这些相关对象,我们就可以利用强大的 Relational ActiveRecord (RAR) 功能来访问资讯的相关对象,例如它的作者和评论。不需要自己写复杂的 SQL JOIN 语句。前提条件在组织数据库时,需要使用主键与外键约束才能使用ActiveReocrd的关系操作;场景申明关系原创 2012-11-24 11:38:08 · 10963 阅读 · 1 评论 -
YII中用kindedit编辑器时向内容插入文本标签
在YII的使用了kindeditor扩展下面是使用扩展的地址http://blog.csdn.net/xinqingch/article/details/8243432后来发现想要在外部插入文本标签不知道怎么插.就去官方找了一下演示.http://www.kindsoft.net/ke4/examples/default.html不错.再修改一下代码:e原创 2013-03-13 13:50:39 · 3089 阅读 · 0 评论 -
Yii AR Model 查询
Yii AR很好很强大,但刚开始不知道怎么使用 如果英文不错,可以直接看原文地址http://www.yiiframework.com/doc/guide/1.1/en/database.ar 下面是我对AR的一些理解 对于一个Model Post 有如下的4中查询方法,返回对象或者对象数组。假设我们查询postID = 10的数据,怎么查询呢,见下面 // f转载 2013-03-01 10:40:49 · 2295 阅读 · 0 评论 -
YII使用relations关联聚合指定字段
代码'attribute'=>array(self::HAS_MANY , 'Attribute', 'zp_id','select'=>'za_title,group_concat(zpa_val) as zpa_val','group'=>'za_id' ),主要用到mysql函数group_concat 与 group原创 2014-12-23 11:50:06 · 2468 阅读 · 0 评论 -
YII对象结果转为数组或直接输入JSON格式
使用Yii 的Active Record 来获取查询结果的时候,返回的结果集是一个对象类型的,有时候为了数据处理的方便希望能够转成数组返回。比如下面的方法:返回一条结果的时候直接用 $post->attributes; 就可以了。原创 2014-09-03 13:51:06 · 23565 阅读 · 0 评论 -
yii checkBoxList 排序方式
yii checkBoxList 排序方式默认是原创 2014-06-04 17:02:16 · 3242 阅读 · 1 评论 -
在YII中使用kindeditor扩展
比较喜欢用kindeditor,YII上的版本比较旧,所以自己重新整了个扩展先在protected\extensions下创建KEditor文件夹用来放文件,keSource里放kindeditor的源文件,然后建三个类KEditor、KEditorManage和KEditorUpload,KEditor是扩展的主文件,KEditorManage是用来浏览服务器文件的,KEditorUploa转载 2012-11-30 14:32:48 · 4963 阅读 · 7 评论 -
YII中使用SOAP一定要注意的一些东西
SiteController.php /** * Declares class-based actions. */ public function actions() { return array( //web service action define 'myService' => array(原创 2013-10-14 09:21:42 · 4445 阅读 · 0 评论 -
YII SESSION的使用方法
首先,在Yii框架中,你不需要像标准PHP代码那样使用session_start(),在Yii框架中,autoStart 属性缺省被设置为true,所以,虽然没有使用session_start(),你仍然可以使用$_SESSION全局变量,但最好使用Yii框架封装的Yii::app->session:设置session变量:Yii::app()->session['var'原创 2013-06-07 11:06:10 · 4272 阅读 · 0 评论 -
关于YII中的时间插件不能修改年份的解决方法
以下是默认的时间组件widget('zii.widgets.jui.CJuiDatePicker', array( 'model'=>$model, 'attribute'=>'start_time',原创 2013-05-31 09:39:56 · 3133 阅读 · 0 评论 -
yii使用CArrayDataProvider进行数组分页
我们的数据未必都是存储在数据库中,很多时候是用数组来组织的。所以获取数组数据,进行分页是比较常见的编程要求。在YII中我们可以利用CArrayDataProvider,可以对一个数组里面的数据进行分页php代码如下 public function actionPage(){ $rawData = array( array('id'原创 2013-05-21 14:35:38 · 7514 阅读 · 1 评论 -
yii 中RULES方法的使用
public function rules() { return array( array('contact','required','on'=>'edit','message'=>'联系人必须填写.'), array('contact','length','on'=>'edit','min'=>2,'max'=>10原创 2012-11-18 13:17:28 · 1861 阅读 · 0 评论 -
PHP一句话将XML转为数组
很简单的一句话以下就是我的函数function xml2array($data){ return $array = json_decode(json_encode(simplexml_load_string($data)),TRUE);}先将XML转为JSON再将JSON转为数组即可原创 2013-05-18 09:12:09 · 2671 阅读 · 0 评论 -
CListView的详细使用参数说明
$this->widget('zii.widgets.CListView', array( 'dataProvider'=>$dataProvider, 'itemView'=>'_view', 'template'=>'{summary}{sorter}{items}{pager}', //template是整个CListView的模板: /原创 2013-04-11 18:49:52 · 2619 阅读 · 0 评论 -
Yii 多个子站同时登录
'components'=>array( 'user'=>array( //'class'=>'CWebUser',//你可以自定义你的Cwebuser 'identityCookie'=>array('domain' => '.domain.cc','path' => '/'),//配置用户cookie作用域 // enable cookie-based aut转载 2013-03-24 09:59:29 · 2902 阅读 · 0 评论 -
Yii框架 Cookie的使用方法详解
使用方法代码如下://设置Cookie $cookie=new CHttpCookie($name,$value); $cookie->expire =time()+60*60*24; Yii::app()->request->cookies[$name]=$cookie; //获取Cookie $cookie=Yii::app()->request->cookies[$原创 2013-03-21 09:52:59 · 7465 阅读 · 0 评论 -
YII存诸一个表单的数据到多个模型内
在项目开发中经常会遇到只有一个表单但是你要存诸数据写进2个表。例如,用户注册的表单,登录信息和身份信息就应该写进2个表!这个要如何写呢,下面我们看控制器的代码:public function actionCreate(){ $modelA = new User;//实例化模型A $modelB = new Profile;//实例化模型B if(isse原创 2012-11-25 16:44:40 · 3094 阅读 · 3 评论 -
YII建立多语言
假设:你的程序源语言为英文,需要制作简体中文版。1、复制framework\messages\config.php 文件到 protected\messages\下2、更改config.php 'languages'=>array('zh_cn',) 3、打开命令行工具 ,进入framework 目录 ,执行yiic message "..\protected\messages\c转载 2012-11-25 14:59:19 · 864 阅读 · 0 评论 -
如何开启YII系统默认的DEBUG
要配置main.php的DB配置加入'enableProfiling'=>YII_DEBUG,'enableParamLogging'=>YII_DEBUG,再将'log'=>array( 'class'=>'CLogRouter', 'routes'=>array( array( 'class'=>'CFileLogRoute', 'leve原创 2012-12-02 21:14:50 · 18158 阅读 · 0 评论 -
YII执行流程图
转载 2012-11-16 10:19:30 · 2187 阅读 · 0 评论 -
Model以及数据库层
在合作的同事中,听到了一些误解的声音,一个是抱怨Yii框架的Model难用,因为Yii框架的Model从DB中取出数据后,就已经转换成了一个对象了,而不是PHP程序员所熟悉的Array,并且,没有提供相关参数直接取得Array数组。思辨1:不知道别的框架到底是怎么处理这个部分的,因为MVC模式中,这个M指的正是Model,Yii框架的处理模式,我认为非常恰当,因为如果M只返回了一个Arra转载 2012-11-30 11:24:42 · 1509 阅读 · 0 评论 -
Yii nginx的配置
upstream phpfpm { #server unix:/var/run/php5-fpm.sock; server 127.0.0.1:9000; } server { listen 80; # Specify this vhost's domain name server_name lxy.me; root /home/l转载 2012-11-30 10:55:41 · 2640 阅读 · 0 评论 -
YII 数据库相关操作
CDbConnection: 一个抽象数据库连接CDbCommand: SQL statementCDbDataReader: 匹配结果集的一行记录CDbTransaction:数据库事务访问数据库前需要建立数据库连接;使用DAO建立一个抽象数据库链接:$connection = new CDbConnection($dsn, $username, $password);原创 2012-11-15 14:54:59 · 8351 阅读 · 0 评论 -
yiic的基本命令参数规则
yiic [parameters...]command-name对应的有 message 搜索指定文件信息 yicc message webroot/xxx.php shell 进入命令行模式 webapp 创建项目 migrate 数据迁移计划如果要查看具体的命令的功能可以用 yiic help 1.yiic webapp原创 2012-11-16 10:10:38 · 5009 阅读 · 0 评论 -
Yii Srbac 非常简单方便的权限控制方法
在开发一个有多种用户的网络应用时,对权限的判断总是一个很麻烦的事情。Yii支持RBAC(Role-Based Access Control),结合filter,就给我们提供了非常简单方便的权限控制方法。其实RBAC的原理很简单。先梳理一下默认的Yii的授权filter:accessControl。它是根据accessRules按照用户的身份(users)来验证并授权的,默认的有*(任何原创 2012-11-15 15:04:12 · 5975 阅读 · 0 评论