if ($dir = @dir($module_directory)) {

mi pare piu' corretto definirla una assegnazione.... piuttosto che una comparazione.