PharFileInfo::chmod

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

説明

public void PharFileInfo::chmod(int $perms)

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)