<?php
require 'init.php';
\IPS\Dispatcher\External::i();
$groups = \IPS\Member\Group::groups(TRUE, FALSE, FALSE);
foreach ($groups as $group)
{
print \IPS\Member::loggedIn()->language()->get( "core_group_{$group->g_id}" ).'<br>';
}
Things stored in the language system (such as group names, because they can be translated into each language) will return a hash when you initially access them typically, and then a special routine runs when we go to print out the output that replaces all the hashes in one go. This saves resources with regards to language replacements. You can call the get() method against the language to return the language string right away, however.