De um modo geral, o uso de caracteres maiúsculos no nome da máquina do módulo não cria problemas: o PHP não faz diferenças entre myModule_get_value()
, e mymodule_get_value()
, e $value = myModule_get_value()
chamaria myModule_get_value()
ou mymodule_get_value()
.
Embora exista um caso em que o uso de caracteres maiúsculos no nome de uma máquina de módulo causaria problemas: ao definir os ganchos de atualização para um módulo. drupal_get_schema_versions()
, a função que retorna uma lista de atualizações disponíveis, contém o seguinte código.
// Prepare regular expression to match all possible defined hook_update_N().
$regexp = '/^(?P<module>.+)_update_(?P<version>\d+)$/';
$functions = get_defined_functions();
// Narrow this down to functions ending with an integer, since all
// hook_update_N() functions end this way, and there are other
// possible functions which match '_update_'. We use preg_grep() here
// instead of foreaching through all defined functions, since the loop
// through all PHP functions can take significant page execution time
// and this function is called on every administrative page via
// system_requirements().
foreach (preg_grep('/_\d+$/', $functions['user']) as $function) {
// If this function is a module update function, add it to the list of
// module updates.
if (preg_match($regexp, $function, $matches)) {
$updates[$matches['module']][] = $matches['version'];
}
}
A última linha executada drupal_get_schema_versions()
é a seguinte.
return empty($updates[$module]) ? FALSE : $updates[$module];
Se o nome do módulo for myModule.module, drupal_get_schema_versions('myModule')
retornará apenas as funções com um nome que comece com myModule_update e termine com um número; funções como mymodule_update_7120()
não serão incluídas porque a expressão regular usada de drupal_get_schema_versions()
diferencia maiúsculas de minúsculas. Isso ainda se aplica ao Drupal 8, pois a expressão regular ainda é a mesma usada no Drupal 7.