Метод chgrp
Метод chgrp класса Filesystem
изменяет группу-владельца файла или директории.
Первым параметром передаётся путь к файлу или
директории, вторым - имя новой группы или её
числовой идентификатор GID. Метод возвращает
true в случае успеха.
Работа метода основана на системном вызове
chgrp, поэтому для смены группы требуются
соответствующие права. Обычно менять группу может
только суперпользователь или владелец файла,
состоящий в целевой группе.
Синтаксис
public function chgrp(string $filename, string|int $group): bool
Пример
Давайте сменим группу-владельца файла на группу
'www-data':
<?php
namespace AppService;
use SymfonyComponentFilesystemFilesystem;
class FileGroupService
{
public function changeGroup(): bool
{
$filesystem = new Filesystem();
$file = '/var/www/project/var/data.txt';
return $filesystem->chgrp($file, 'www-data');
}
}
?>
Результат выполнения кода:
true
Пример
Давайте сменим группу, передав её числовой идентификатор GID:
<?php
namespace AppService;
use SymfonyComponentFilesystemFilesystem;
class FileGroupService
{
public function changeGroupById(): bool
{
$filesystem = new Filesystem();
$file = '/var/www/project/var/data.txt';
return $filesystem->chgrp($file, 33);
}
}
?>
Результат выполнения кода:
true
Пример
Давайте сменим группу-владельца директории:
<?php
namespace AppService;
use SymfonyComponentFilesystemFilesystem;
class FileGroupService
{
public function changeDirGroup(): string
{
$filesystem = new Filesystem();
$dir = '/var/www/project/var/cache';
$res = $filesystem->chgrp($dir, 'www-data');
return $res ? 'group changed' : 'group not changed';
}
}
?>
Результат выполнения кода:
"group changed"
Смотрите также
-
класс
Filesystem,
который предоставляет методы для работы с файлами -
метод
chmod,
который меняет права доступа к файлу -
метод
chown,
который меняет владельца файла -
метод
exists,
который проверяет существование файла