That @ supresses the error messages (or warnings, or notices) when used with a variable or a function.
For example in that case, if $this->params['id'] is not set, php won't generate the warning message saying that variable is undefined. You can use it too with functions like @mysql_connect(.....) that's useful to get rid of php errors to handle your own.
Here you have a bit more info http://www.php.net/manual/en/language.operators.errorcontrol.php
1 to 3 of 3