(PHP 5 >= 5.2.0, PHP 7, PHP 8)
posix_initgroups — Calculate the group access list
Calculates the group access list for the user specified in name.
username
The user to calculate the list for.
group_id
Typically the group number from the password file.
The function does not calculate groups, it sets groups access list of the current processs in accordance to user information in /etc/groups.
Quote from Unix manual pague for initgroups:
NAME
initgroups - initialice the supplementary group access list
...
DESCRIPTION
The initgroups() function initialices the group access list by reading the
group database /etc/group and using all groups of which user is a member.
The additional group group is also added to the list.