Ah, I see. Perhaps there really was a glitch in the forum software then, since part of the steps (i.e., the explanation as to why @ should be used, later provided in another post) is missing from your initial post in this thread.
That said, @ is not always the right approach even here: if we can be reasonably certain that the URL is correct, then it would be better not to suppress the error and instead allow it to appear in the log, because if it does get logged, it probably is something that needs to be fixed, not ignored. On the other hand, if say the URL might be wrong because say, $username could quite reasonably be invalid without needing to fix the code or some input file/database, then using @ so that the log does not get clogged makes sense.