International PHP Conference Berlin 2025

PharData::setSignatureAlgorithm

(No version information available, might only be in Git)

PharData::setSignatureAlgorithmSet the signature algorithm for a phar and apply it

Опис

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

Зауваження:

Для роботи з об'єктами Phar цей метод потребує, щоб директива php.ini phar.readonly мала значення 0. Інакше буде викинуто 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.

Параметри

algo

One of Phar::MD5, Phar::SHA1, Phar::SHA256, Phar::SHA512, or Phar::OPENSSL

Значення, що повертаються

Не повертає значень.

Помилки/виключення

Throws UnexpectedValueException for many errors, BadMethodCallException if called for a zip- or a tar-based phar archive, and a PharException if any problems occur flushing changes to disk.

Журнал змін

Версія Опис
8.0.0 privateKey is now nullable.

Прогляньте також

add a note

User Contributed Notes 1 note

up
3
obsidian[at-nospam]codebite[dot]net
13 years ago
As a note, the docs don't show the (optional) second parameter nor mention the existence of the Phar::OPENSSL class constant also available for use with this method.

To sign a phar with OpenSSL, for example...

<?php

$phar
= new Phar('somephar.phar');
// ... add your files and such
$phar->setSignatureAlgorithm(Phar::OPENSSL, file_get_contents('private_key_here.pem'));
// ... do whatever else you want afterwards here ...
?>

Hope this proves useful to someone.
To Top