Every function can either return a positive result (if everything works) or an error (if something unexpected happened). Errors (in non-user defined functions) usually arise because of too few, too many or incorrect (type) parameters. You can use the error-suppression operator (@) to hide these errors and ignore them. Simply, if this function gives you the error, do not show it and ignore it. Using this operator does have a good point. You can use it to write your own error-handling mechanism. In this case you will hide the default errors php gives you and handle the errors in your own script. However, if this is not what you're trying to do, supressing (hiding) errors is not smart, because your code produces some errors and does not work like you meant it to work, but you don't know what is wrong, because you hid the errors.
For your case, you should remove the @ operator and run the code. Paste the error in here along with the code and we will be able to tell you what's wrong with it, and you can then fix it so that it works and you don't need to use error supression.