Phar::setSignatureAlgorithm
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.1.0)
Phar::setSignatureAlgorithm — Set the signature algorithm for a phar and apply it
说明
$algo
, ?string $privateKey
= null
): void注意:
此方法需要 将 php.ini 中的
phar.readonly
设为0
以适合 Phar 对象. 否则, 将抛出PharException.
set the signature algorithm for a phar and apply it. The
signature algorithm must be one of Phar::MD5
,
Phar::SHA1
, Phar::SHA256
,
Phar::SHA512
, or Phar::OPENSSL
.
Note that all executable phar archives have a signature created
automatically, SHA1
by default. data tar- or zip-based archives
(archives created with the PharData class) must have
their signature created and set explicitly via
Phar::setSignatureAlgorithm().
参数
-
algo
-
One of
Phar::MD5
,Phar::SHA1
,Phar::SHA256
,Phar::SHA512
, orPhar::OPENSSL
-
privateKey
-
The contents of an OpenSSL private key, as extracted from a certificate or OpenSSL key file:
<?php
$private = openssl_get_privatekey(file_get_contents('private.pem'));
$pkey = '';
openssl_pkey_export($private, $pkey);
$p->setSignatureAlgorithm(Phar::OPENSSL, $pkey);
?>
返回值
没有返回值。
错误/异常
Throws UnexpectedValueException for many errors, and a PharException if any problems occur flushing changes to disk.
更新日志
版本 | 说明 |
---|---|
8.0.0 |
privateKey is now nullable.
|
参见
- Phar::getSupportedSignatures() - Return array of supported signature types
- Phar::getSignature() - Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive

User Contributed Notes
备份地址:http://www.lvesu.com/blog/php/phar.setsignaturealgorithm.php