关于createUrl和CHtml::link参数设置的区别

关于createUrl和CHtml::link参数设置的区别 
前者将多个参数放进一个数组中,后者直接向后累计添加(不放进数组) 
1,createUrl应用 

Html代码  收藏代码
  1. <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应用 

Html代码  收藏代码
  1. <?php echo CHtml::link(CHtml::encode($data->title), array('view', 'id'=>$data->id,'news_type'=>$data->news_type)); ?>  
  2.   
  3. //例如:  
  4. <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'));?>  
  5. html输出是<a href="index.php?r=controller/action&param1=value1">Link Text</a>  
  6.   
  7. //多参数  
  8. <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1','param2'=>'value2'));?>  
  9. html输出是<a href="index.php?r=controller/action&param1=value1&param2=value2">Link Text</a>  
  10.   
  11. //额外参数:  
  12. <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'), array('target'=>'_blank'));?>  
  13. html输出是<a target="_blank" href="index.php?r=controller/action&param1=value1">Link Text</a>  
  14.   
  15. //绝对路径:  
  16. <?php echo CHtml::link('Link Text', array('/controller/action'));?>  
  17.   
  18. //指定模块下的路径  
  19. <?php echo CHtml::link('Link Text', array('/module-id/controller/action'));?>  
  20.   
  21. //无效链接:  
  22. <?php echo CHtml::link('Link Text', array('href'=>'javascript:void(0)'));?>  
  23. <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?",));?> 

posted @ 2013-09-15 22:16  冯志强采桑子  阅读(242)  评论(0编辑  收藏  举报