You need to do that if you write code that allows $phpbb_dispatcher to be null. So basically it's a case by case decision, ideally if the dispatcher is passed as an argument it's defined by whether or not you add "= null" as a default as null will not be allowed otherwise. In cases where you still use it as a global variable, i guess it's really just a matter of whether you see a reasonable use case of calling the function without a dispatcher.