Start · Sprachen · PHP · Referenz · rnp_version_string_full

rnp_version_string_full

Funktion

Gibt die vollständige Versionszeichenkette der RNP-Bibliothek (OpenPGP-Implementierung) zurück.

seit PHP 8.0.0 Kategorie: crypto

Signatur

rnp_version_string_full(): string

Beschreibung

rnp_version_string_full() ist Teil der PHP-Erweiterung für die RNP-Bibliothek, eine OpenPGP-konforme Kryptografie-Bibliothek. Die Funktion liefert die vollständige Versionszeichenkette der aktuell geladenen RNP-Bibliothek als lesbaren String zurück.

Im Gegensatz zur einfachen Versionsnummer (z. B. rnp_version_string()) enthält die vollständige Versionszeichenkette zusätzliche Informationen wie Commit-Hashes, Build-Metadaten oder Versionszusätze (z. B. 0.17.0+git20230101.abcdef1). Dies ist besonders nützlich für Debugging-Zwecke, Kompatibilitätsprüfungen oder Diagnose-Ausgaben in Anwendungen, die auf PGP-Verschlüsselung angewiesen sind.

Die Funktion eignet sich vor allem dann, wenn man sicherstellen möchte, dass eine bestimmte Version der RNP-Bibliothek installiert ist – etwa bei der Nutzung von Features, die nur in neueren Versionen verfügbar sind, oder wenn Sicherheitsupdates eingespielt werden müssen.

Rückgabewert

Typ
string
Beschreibung
Gibt die vollständige Versionszeichenkette der RNP-Bibliothek zurück, z. B. "0.17.0" oder eine erweiterte Zeichenkette mit Build-Metadaten wie "0.17.0+git20230101.abcdef1".

Beispiele

Vollständige RNP-Version ausgeben

<?php
// Gibt die vollständige Versionszeichenkette der RNP-Bibliothek aus
$version = rnp_version_string_full();
echo "RNP-Bibliothek Version (vollständig): " . $version . PHP_EOL;
RNP-Bibliothek Version (vollständig): 0.17.0

Versionskompatibilität prüfen

<?php
// Mindestversion festlegen und Kompatibilität prüfen
$minVersion = '0.16.0';
$fullVersion = rnp_version_string_full();

// Nur den Basis-Versionsanteil extrahieren (vor einem '+' oder '-')
$baseVersion = preg_replace('/[+\-].*$/', '', $fullVersion);

if (version_compare($baseVersion, $minVersion, '>=')) {
    echo "RNP-Bibliothek ist kompatibel (gefunden: $fullVersion)" . PHP_EOL;
} else {
    echo "RNP-Bibliothek ist veraltet! Gefunden: $fullVersion, benötigt: $minVersion" . PHP_EOL;
}
RNP-Bibliothek ist kompatibel (gefunden: 0.17.0)

// Wichtig · Fallstricke

Die Funktion setzt voraus, dass die PHP-Erweiterung rnp installiert und aktiviert ist. Ist die Erweiterung nicht verfügbar, führt der Aufruf zu einem fatalen Fehler (Call to undefined function). Vor dem Einsatz in produktivem Code empfiehlt sich daher eine Prüfung mit function_exists('rnp_version_string_full').

Da die vollständige Versionszeichenkette Build-Metadaten enthalten kann, sollte für reine Versionsvergleiche der Basis-Versionsanteil extrahiert werden (z. B. mit preg_replace()), bevor version_compare() verwendet wird.