问一下关于控制器--动作的参数问题




    class PostController extends CController

    {

        public function actionCreate(array $categories)

        {

            // Yii will make sure $categories be an array

        }

    }



请问这种接收数组格式的参数,我在传递URL时候。URL应该怎么弄,才能接收到参数?

//我这样写好像不行

$url = Yii::app()->createUrl(‘post/create’, array(‘categorys’ => $array);

现在做的一个东西必须用get传参才有动态效果。但是参数个数又不是固定的,所以想用数组的形式传过去,但是不会用,求qiang哥指点。求达人指点。

$_GET中可以传递数组,有一段程序




public function actionIndex()

	{

		$criteria = new CDbCriteria();

		$criteria->select 		= " t.* ";

		$criteria->order 		= " t.publish_time DESC";

		

		if(isset($_GET['Content'])) 

		{			

			$attributes=$_GET['Content'];

			if(isset($attributes['num'])) $criteria->compare('num',$attributes['num'],true);						

			if(isset($attributes['cat_id'])) $criteria->compare('cat_id',$attributes['cat_id'],true);

			if(isset($attributes['title'])) $criteria->compare('title',$attributes['title'],true);



也可以改写为




public function actionIndex($Content)

	{

		$criteria = new CDbCriteria();

		$criteria->select 		= " t.* ";

		$criteria->order 		= " t.publish_time DESC";

		

		if($Content!=null) 

		{			

			$attributes=$Content;

			if(isset($attributes['num'])) $criteria->compare('num',$attributes['num'],true);						

			if(isset($attributes['cat_id'])) $criteria->compare('cat_id',$attributes['cat_id'],true);

			if(isset($attributes['title'])) $criteria->compare('title',$attributes['title'],true);



也就是你所写的actionCreate(array $categories)。

下面的没试过…