When posix_getgrgid() fails (e.g. an invalid/unknown group id), it returns false.
This is except for Mac OSX on which you get an array with name "nogroup" and gid of "-1".
posix_getgrgid
(PHP 4, PHP 5)
posix_getgrgid — Return info about a group by group id
Description
array posix_getgrgid
( int
$gid
)Gets information about a group provided its id.
Parameters
-
gid -
The group id.
Return Values
The array elements returned are:
| Element | Description |
|---|---|
| name | The name element contains the name of the group. This is a short, usually less than 16 character "handle" of the group, not the real, full name. |
| passwd | The passwd element contains the group's password in an encrypted format. Often, for example on a system employing "shadow" passwords, an asterisk is returned instead. |
| gid |
Group ID, should be the same as the
gid parameter used when calling the
function, and hence redundant.
|
| members | This consists of an array of string's for all the members in the group. |
Changelog
| Version | Description |
|---|---|
| 4.2.0 | Prior to this version, members was simply an integer representing the number of members in the group, and the member names were returned with numerical indices. |
Examples
Example #1 Example use of posix_getgrgid()
<?php
$groupid = posix_getegid();
$groupinfo = posix_getgrgid($groupid);
print_r($groupinfo);
?>
The above example will output something similar to:
Array
(
[name] => toons
[passwd] => x
[members] => Array
(
[0] => tom
[1] => jerry
)
[gid] => 42
)
See Also
- posix_getegid() - Return the effective group ID of the current process
- posix_getgrnam() - Return info about a group by name
- filegroup() - Gets file group
- stat() - Gives information about a file
- safe_mode_gid
- POSIX man page GETGRNAM(3)
cweiske at php dot net ¶
3 years ago
james at jfc dot org dot uk ¶
10 years ago
in php-4.3 the array returned seems to have changed.
it now returns:
["name"] group name
["passwd"] group password
["members"] group members (array of usernames)
["gid"] numeric group id
tech at dslip dot com dot au ¶
10 years ago
okies...
This code should be considered as an OPTION only, it works under MY set of circumstances, and that is all I intended. The below funtion will return the NAME of the GROUP if provided with the Group ID#
function RC_posix_getgrgid($gid)
{
$LocationGroup = "/etc/group"; //EDIT THIS IF YOU HAVE A DIFFERENT OS. mine = debian
$fp = fopen ("/etc/group","r");
while ($groupinfo = fscanf ($fp, "%[a-zA-Z0-9]:x:%[0-9]:%[a-zA-Z0-9]\n"))
{
list ($name, $groupID, $nfi) = $groupinfo;
if ($groupID == $gid)
{
$returnval = $name;
}
}
fclose($fp);
if($returnval) { return $returnval; } else { return 0; }
}
rcgraves+php at brandeis dot edu ¶
13 years ago
Returns an array containing the elements of the group structure. The array has both numeric indices, each of which is a string naming one member of the group, and named string indices. The array elements are:
$_["name"] string groupname (users)
$_["gid"] integer gidnumber (e.g. 0 for wheel/root)
$_["members"] int number of users in group
$_[0]..$_[n] string usernames in the group
