posix_getgrgid

(PHP 4, PHP 5, PHP 7, PHP 8)

posix_getgrgid指定したグループ ID を有するグループに関する情報を返す

説明

posix_getgrgid(int $group_id): array|false

指定した ID のグループに関する情報を取得します。

パラメータ

group_id

グループ ID。

戻り値

以下の要素を持つ配列を返します。

グループ情報の配列
要素 説明
name グループ名。これは、16 文字以下の短い文字列からなる 「ハンドル」であり、実際の完全な名前とは異なります。
passwd グループのパスワードを暗号化したもの。 システムが「シャドー」パスワードを使用している場合は、 ここではアスタリスクが返されます。
gid グループ ID。この関数をコールする際に指定した group_id と同じものになるので、冗長なデータです。
members このグループに属する全メンバーを表す文字列の配列。
この関数は、失敗時に false を返します。

例1 posix_getgrgid() の使用例

<?php

$groupid
= posix_getegid();
$groupinfo = posix_getgrgid($groupid);

print_r($groupinfo);
?>

上の例の出力は、 たとえば以下のようになります。

Array
(
    [name]    => toons
    [passwd]  => x
    [members] => Array
        (
            [0] => tom
            [1] => jerry
        )
    [gid]     => 42
)

参考

  • posix_getegid() - 現在のプロセスの有効なグループ ID を返す
  • posix_getgrnam() - 指定した名前のグループに関する情報を返す
  • filegroup() - ファイルのグループを取得する
  • stat() - ファイルに関する情報を取得する
  • POSIX man ページ GETGRNAM(3)

add a note

User Contributed Notes 4 notes

up
1
tech at dslip dot com dot au
23 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; }    }
up
0
cweiske at php dot net
16 years ago
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".
up
0
james at jfc dot org dot uk
22 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
up
0
rcgraves+php at brandeis dot edu
25 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
To Top