PharData::setSignatureAlgorithm

(没有版本信息可用,可能只在 Git 中)

PharData::setSignatureAlgorithm设置 phar 的签名算法并应用它

说明

public PharData::setSignatureAlgorithm(int $algo, ?string $privateKey = null): void

注意:

此方法需要 php.ini 设置 phar.readonly 设置为 0 才能对 Phar 对象生效。否则,将抛出 PharException

设置 phar 的签名算法并应用它。签名算法必须是 Phar::MD5Phar::SHA1Phar::SHA256Phar::SHA512Phar::OPENSSL 之一。

参数

algo

Phar::MD5Phar::SHA1Phar::SHA256Phar::SHA512Phar::OPENSSL 之一

返回值

没有返回值。

错误/异常

对于许多错误,抛出 UnexpectedValueException,如果针对 zip 或基于 tar 的 phar 存档调用,则抛出 BadMethodCallException,如果在将更改刷新到磁盘时出现任何问题,则抛出 PharException

变更日志

版本 说明
8.0.0 privateKey 现在可以为空。

参见

添加注释

用户贡献的注释 1 条注释

3
obsidian[at-nospam]codebite[dot]net
13 年前
作为注释,文档没有显示(可选的)第二个参数,也没有提到可用于此方法的 Phar::OPENSSL 类常量的存在。

例如,要使用 OpenSSL 签署 phar...

<?php

$phar
= new Phar('somephar.phar');
// ... 添加您的文件等
$phar->setSignatureAlgorithm(Phar::OPENSSL, file_get_contents('private_key_here.pem'));
// ... 之后在这里执行任何其他操作 ...
?>

希望这对某些人有用。
To Top