PharFileInfo::chmod

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.0.0)

PharFileInfo::chmodファイル固有のパーミッションビットを設定する

説明

public PharFileInfo::chmod(int $perms): void

PharFileInfo::chmod() は、ファイルパーミッションのうち実行ビットと読み込みビットを設定します。 書き込みビットについては無視されます。書き込みビットは、実行時に INI 設定 phar.readonly に基づいて自動的に設定されます。 この関数は phar の内容を変更するので、Phar アーカイブ内のファイルを操作するには INI 設定 phar.readonly がオフでなければなりません。 PharData アーカイブ内のファイルについては、この制約はありません。

パラメータ

perms

パーミッション (chmod() を参照ください)。

戻り値

値を返しません。

例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 "hi"; ?>'
;
    
// 実行ビットを設定します
    
$p['file.sh']->chmod(0555);
    
var_dump($p['file.sh']->isExecutable());
} catch (
Exception $e) {
    echo 
'phar の作成/変更に失敗しました: '$e;
}
?>

上の例の出力は以下となります。

bool(true)

関連キーワード:  ビット, 設定, PharFileInfo, 固有, chmod, ファイル, phar, 書き込み, readonly, アーカイブ