(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.0.0)
PharFileInfo::chmod — Установка прав доступа
PharFileInfo::chmod() позволяет устанавливать биты разрешений на запуск и чтение для файлов. Биты записи игнорируются, поскольку настраиваются во время исполнения на основании значения INI-переменной phar.readonly. Как и для любого другого функционала, модифицирующего phar-архив, необходимо, чтобы переменная phar.readonly была отключена для успешного изменения прав на файл в архиве Phar. Архивы PharData не имеют таких ограничений.
Функция не возвращает значения после выполнения.
Пример #1 Пример использования PharFileInfo::chmod()
<?php
// удалим, на всякий случай
@unlink('brandnewphar.phar');
try {
$p = new Phar('brandnewphar.phar', 0, 'brandnewphar.phar');
$p['file.sh'] = '#!/usr/local/lib/php
<?php echo "привет"; ?>';
// установим бит исполнрения
$p['file.sh']->chmod(0555);
var_dump($p['file.sh']->isExecutable());
} catch (Exception $e) {
echo 'Не удалось создать/изменить phar: ', $e;
}
?>
Результат выполнения приведённого примера:
bool(true)