Hmmm, I haven't personally noticed it, but then on any of my internet accessible boxes I make sure errors aren't printed to the screen.
What probably is happening is $banned_domain is empty, so the function can't check the email_domain (which is what the user is registering with) against an empty list.
try adding this in front of strstr(
!empty($banned_domain) &&
so that you now have:
if( !empty($banned_domain) && strstr( $email_domain, $banned_domain ) )
This should keep it from generating and error, since the first check is to see if banned_domain is empty or not. If it is, it should move on because the first check would be false. Thus making it impossible for the second half to make the entire if statement true.
I haven't tried this out yet, so let me know what happens.