来自:http://blog.csdn.net/anlukun/article/details/8905900
关于createUrl和CHtml::link参数设置的区别
前者将多个参数放进一个数组中,后者直接向后累计添加(不放进数组)
1,createUrl应用
批注:在MVC中,可以使用$this->createUrl();在../components/xx.php中使用Yii::app()->createUrl();
2,CHtml::link应用
三、CHtml::linkButton
<?php echo CHtml::linkButton('LinkName', array('submit'=>array('controller/action','param'=>'value1'), 'confirm'=>"Are you sure?",));?>
关于createUrl和CHtml::link参数设置的区别
前者将多个参数放进一个数组中,后者直接向后累计添加(不放进数组)
1,createUrl应用
- <a href="<?php echo $this->createUrl('news/view',array('id'=>$companyNew->id,'news_type'=>$companyNew->news_type)) ?>" title="<?php echo $companyNew->title ?>">
批注:在MVC中,可以使用$this->createUrl();在../components/xx.php中使用Yii::app()->createUrl();
2,CHtml::link应用
- <?php echo CHtml::link(CHtml::encode($data->title), array('view', 'id'=>$data->id,'news_type'=>$data->news_type)); ?>
- //例如:
- <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'));?>
- html输出是<a href="index.php?r=controller/action¶m1=value1">Link Text</a>
- //多参数
- <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1','param2'=>'value2'));?>
- html输出是<a href="index.php?r=controller/action¶m1=value1¶m2=value2">Link Text</a>
- //额外参数:
- <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'), array('target'=>'_blank'));?>
- html输出是<a target="_blank" href="index.php?r=controller/action¶m1=value1">Link Text</a>
- //绝对路径:
- <?php echo CHtml::link('Link Text', array('/controller/action'));?>
- //指定模块下的路径
- <?php echo CHtml::link('Link Text', array('/module-id/controller/action'));?>
- //无效链接:
- <?php echo CHtml::link('Link Text', array('href'=>'javascript:void(0)'));?>
- <a href="javascript:void(0)">Link Text</a>
三、CHtml::linkButton
<?php echo CHtml::linkButton('LinkName', array('submit'=>array('controller/action','param'=>'value1'), 'confirm'=>"Are you sure?",));?>