PHP 8.1.0 RC 4 available for testing

gnupg_keyinfo

(PECL gnupg >= 0.1)

gnupg_keyinfoВозвращает массив с информацией обо всех ключах, которые соответствуют заданному шаблону

Описание

gnupg_keyinfo(resource $identifier, string $pattern): array

Список параметров

identifier

Идентификатор gnupg, полученный из gnupg_init() или gnupg.

pattern

Шаблон, проверяемый на соответствие.

Возвращаемые значения

Возвращает массив с информацией обо всех ключах, которые соответствуют заданному шаблону или false в случае возникновения ошибки.

Примеры

Пример #1 Пример использования gnupg_keyinfo() в процедурном стиле

<?php
$res 
gnupg_init();
$info gnupg_keyinfo($res'test');
print_r($info);
?>

Пример #2 Пример использования gnupg_keyinfo() в объектно-ориентированном стиле

<?php
$gpg 
= new gnupg();
$info $gpg -> keyinfo("test");
print_r($info);
?>

add a note add a note

User Contributed Notes 3 notes

up
9
fauger at NOSPAM dot anonymous dot com
8 years ago
You CAN list all keys in the keyring, you only have to pass an empty string ''.

<?php
$gpg
= new gnupg();
$info = $gpg -> keyinfo('');
print_r($info);
?>

That's it! ;)
up
2
gtisza at gmail dot com
6 years ago
Returns an array of information blocks. An information block looks like
<?php
array (
   
'disabled' => <bool>,
   
'expired' => <bool>,
   
'revoked' => <bool>,
   
'is_secret' => <bool>,
   
'can_sign' => <bool>,
   
'can_encrypt' => <bool>,
   
'uids' => <array of uid blocks>,
   
'subkeys' => <array of subkey blocks>,
)
?>
An uid data block looks like
<?php
array (
   
'name' => <string>,
   
'comment' => <string>,
   
'email' => <string>,
   
'uid' => <string>,
   
'revoked' => <bool>,
   
'invalid' => <bool>,
)
?>
A subkey block looks like
<?php
array (
   
'fingerprint' => <string>,
   
'keyid' => <string>,
   
'timestamp' => <int>,
   
'expires' => <int>,
   
'is_secret' => <bool>,
   
'invalid' => <bool>,
   
'can_encrypt' => <bool>,
   
'can_sign' => <bool>,
   
'disabled' => <bool>,
   
'expired' => <bool>,
   
'revoked' => <bool>,
),
?>
up
-4
porjo38 at yahoo dot com dot au
8 years ago
It appears that listing *all* keys is not possible:

<?php
$gpg
-> keyinfo();   // throws an error
$gpg -> keyinfo('*');  // is matched literally, not treated as a shell wildcard
$gpg -> keyinfo('.*');  // is matched literally, not treated as a regex wildcard
?>

This seems like a glaring omission to me.
To Top