Ícone do site Linha de Comando

Moodle: Como Obter o Nome Completo do Usuário com fullname()

No Moodle, é comum precisarmos obter o nome completo de um usuário a partir do ID. Embora seja possível concatenar firstname e lastname manualmente, existe uma forma oficial e mais segura de fazer isso utilizando a própria API do Moodle.

O Problema

Muitos desenvolvedores fazem consultas diretas na tabela mdl_user e concatenam os campos manualmente:

global $DB;

$user = $DB->get_record('user', ['id' => $userid]);

$nomecompleto = $user->firstname . ' ' . $user->lastname;

O problema dessa abordagem:

A Solução Correta

O Moodle possui uma função própria para isso: fullname().

global $DB;

$user = $DB->get_record('user', ['id' => $userid]);

$nomecompleto = fullname($user);

echo $nomecompleto;

Essa função:

Exemplo direto em um curso

require_once('../../config.php');

$userid = required_param('userid', PARAM_INT);

$user = $DB->get_record('user', ['id' => $userid], '*', MUST_EXIST);

echo fullname($user);

Quando usar SQL?

Se for apenas para relatório simples via SQL:

SELECT id,
       CONCAT(firstname, ' ', lastname) AS nome_completo
FROM mdl_user;

Mas para desenvolvimento dentro do Moodle (plugins, relatórios customizados, scripts PHP), sempre prefira fullname().

Conclusão

Para obter o nome completo no Moodle, não concatene manualmente. Utilize a função fullname(). Ela é a forma oficial, segura e compatível com futuras atualizações da plataforma.

Sair da versão mobile