イイ1
他の答えのほとんどは間違っています。ポスターは、(一部の) $_GET パラメータなしで URL を要求しています。
完全な内訳は次のとおりです (現在アクティブなコントローラー、モジュールの URL を作成するかどうか):
// without $_GET-parameters
Yii::app()->controller->createUrl(Yii::app()->controller->action->id);
// with $_GET-parameters, HAVING ONLY supplied keys
Yii::app()->controller->createUrl(Yii::app()->controller->action->id,
array_intersect_key($_GET, array_flip(['id']))); // include 'id'
// with all $_GET-parameters, EXCEPT supplied keys
Yii::app()->controller->createUrl(Yii::app()->controller->action->id,
array_diff_key($_GET, array_flip(['lg']))); // exclude 'lg'
// with ALL $_GET-parameters (as mensioned in other answers)
Yii::app()->controller->createUrl(Yii::app()->controller->action->id, $_GET);
Yii::app()->request->url;
同じアクティブ コントローラーがない場合は、次のようにフル パスを指定する必要があります。
Yii::app()->createUrl('/controller/action');
Yii::app()->createUrl('/module/controller/action');
一般的な URL の構築に関する Yii ガイドを確認してください: http://www.yiiframework.com/doc/guide/1.1/en/topics.url#creating-urls