CHtml.php r1540
line: 971
public static function normalizeUrl($url)
{
    if(is_array($url))
    {
        if(isset($url[0]))
        {
            if(($c=Yii::app()->getController())!==null)
                $url=$c->createUrl($url[0],array_splice($url,1));
            else
                $url=Yii::app()->createUrl($url[0],array_splice($url,1));
        }
        else
            $url='';
    }
    return $url==='' ? Yii::app()->getRequest()->getUrl() : $url;
}
change to:
public static function normalizeUrl($url)
{
    if(is_array($url))
    {
        if(isset($url[0]))
        {
            $params = array_splice($url,1);
            if(isset($params[0]) && is_array($params[0]))
            {
                $params = $params[0];
            }
            if(($c=Yii::app()->getController())!==null)
                $url=$c->createUrl($url[0],$params);
            else
                $url=Yii::app()->createUrl($url[0],$params);
        }
        else
            $url='';
    }
    return $url==='' ? Yii::app()->getRequest()->getUrl() : $url;
}
it can be use like:
Html::link('link text', array('controllerId/actionId', array_merge($_GET, array('lang'=>$lang));
i think it will be useful~  ![]()