`
文章列表
本文来自Totango的联合创始人兼CEO盖伊•尼尔帕兹(Guy Nirpaz),他在本文中列出了优秀的开发者和差的(或还需努力的)开发者之间的区别。 如果你认为使用“优秀”和“差”来区分开发者不妥的话,也可以将这些看作是初级开发者和资深开发者之间的区别。但无论如何,多看看其他的优秀开发者(或资深开发者)是如何做的,对于自身技能、工作方式的提升有很大的帮助。 

yiif的Behavior事例

    博客分类:
  • PHP
<?php class AutoTimestampBehavior extends CActiveRecordBehavior { /** * The field that stores the creation time */ public $created = 'created'; /** * The field that stores the modification time */ public $modified = 'modified'; public funct ...
方法一: $model->isNewRecord   方法二: $model->sceranio 为insert是添加,为update是更新

Yii使用 AR 处理事务

    博客分类:
  • PHP
每个 AR 实例都含有一个属性名叫 dbConnection ,是一个 CDbConnection 的实例,这样我们可以在需要时配合 AR 使用由 Yii DAO 提供的 事务 功能:   $model=Post::model(); $transaction=$model->dbConnection->beginTransaction(); try { // 查找和保存是可能由另一个请求干预的两个步骤 // 这样我们使用一个事务以确保其一致性和完整性 $post=$model->findByPk(10); $post->t ...

yii中使用日志

    博客分类:
  • PHP
要使用信息路由,我们需要安装并预加载一个 CLogRouter 应用组件。我们也还需要配置它的 routes 属性为我们想要的那些日志路由。 下面的代码演示了一个所需的 应用配置 示例:   array( ...... 'preload'=>array('log'), 'components'=>array( ...... 'log'=>array( 'class'=>'CLogRouter', 'routes'=>array( ...
先看一下例子:  public function rules() { return array( array('username, password', 'required'), array('rememberMe', 'boolean'), array('password', 'authenticate'), ); } public function authenticate($attribute,$params) { ...
通过 AR 使用多个数据库有两种方式。如果数据库的结构不同,你可以创建不同的 AR 基类实现不同的 getDbConnection()。否则,动态改变静态变量 CActiveRecord::db 是一个好主意。

yii中的占位符方法

    博客分类:
  • PHP
yii提供了以下几个占位符方法,要注册灵活运用。   CActiveRecord 提供了几个占位符方法,它们可以在子类中被覆盖以自定义其工作流。 beforeValidate 和 beforeSave 和 afterSave: 这两个将在保存 AR 实例之前和之后被调用。
document.body.scrollTop获取或设置网页滚动的高度。   在firefox下面无论滚动条滚动多少,得到的值总为0,郁闷吧??? 后来发现是我页面头部设置的在原因: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   可以用document.documentElement.scrolltop获取,但chrome又不起作用,最彻底的解决 ...

yii的gridview使用

    博客分类:
  • PHP
$this->widget('zii.widgets.grid.CGridView', array('dataProvider'=>$dataProvider,//数据源 'pager'=>array( //通过pager设置样式 默认为CLinkPager 'prevPageLabel'=>'上一页', 'firstPageLabel'=>'首页', //first,last 在默认样式中为{display:none}及不显示,通过样式{d ...

yii日志管理

    博客分类:
  • PHP
自定义日志模型 日志的创建与更新 日志显示 日志管理   From:http://www.yiichina.com/blog/post.create
  <? if( empty($_GET['FileName'])|| empty($_GET['FileDir'])|| empty($_GET['FileId'])){ echo'<script> alert("非法连接 !"); location.replace ("index.php") </script>'; exit(); } $file_name=$_GET['FileName']; $file_dir=$_GET['FileDir']; $FileId=$_GET['FileI ...
  Yii的使用者都知道Yii是一个基于Component开发的框架,我们平时用到的Controller,Model等其实都是Component,因此我们也可以利用Component的特性来为我们的model添加一些功能。 平时我们建立的user表总是会涉及到first_name, last_name, 而在系统中我们要用到的却经常是完整人名。 //action $user = User::model()->findByPk($id); $this->render('show', array('user' => $user));     //view < ...
  我们在用表格展示数据并管理的时候,可能会需要用到按钮来操作某一行数据,比如查看,修改,删除! Yii内置了3种按钮:查看,修改和删除,你可以自定义样式、事件。详细配置见类参考:CButtonColumn. 如果需要自定义按钮绑定指定的事件该怎么办呢? 幸运的是Yii提供了自定义按钮的办法.看代码: 在视图文件里面:   $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'xx-xx-grid', 'dataProvider'=>$model->search(), ...

Yii GridView 初探

    博客分类:
  • PHP
    最近在社区成员的强烈要求下,qiang也开始开发了Yii的GridView widget。根据qiang的意思此widget应该会在1.1rc的时候发布。不过今天当我更新svn的时候发现这个插件已经出现在zii的插件包中了,新东西当然都试下,接下来让我们看看 CGridView是怎么工作的。 首先通过下面这段代码,我们在action中生成了一个dataProvider可以提供给view中的widget调用   $userData = new CActiveDataProvider('User', array( 'pagination'=>array( ...
Global site tag (gtag.js) - Google Analytics