Seitenhierarchie
Zum Ende der Metadaten springen
Zum Anfang der Metadaten

 

Zusammenfassung

In PHP sind unterschiedliche Konfigurationen möglich. Im Framework gibt es deshalb eine zentrale Stelle um die Abhängigkeiten zu prüfen.

 


Beschreibung

Jede Alvine-Komponente besitzt eine Component-Klasse die eine Methode Component::initEnvironmentRules() implementiert. In dieser Methode müssen die gewünschten Abhängigekeiten per Ruleset-Klassen definiert werden.

/**
 * Initialisierung der Abhängigkeiten der Komponente
 */
protected function initEnvironmentRules() {
    /** Aufruf der Parent-Regeln */
    parent::initEnvironmentRules();
    /** Regeln der Komponente */
    $this->ruleset
    /** Das Modul PHP-Modul Mongo muss installiert sein */
    ->add(new \Alvine\Util\Dependency\Rule\PhpModule('mongo'))
    /** In der PHP-Ini muss zend.multibyte=true gesetzt sein */
    ->add(new \Alvine\Util\Dependency\Rule\PhpIni('zend.multibyte', true));
}

Auf der Konsole können die Abhängigkeiten über folgendes Script überprüft werden

curl -s http://download.alvine.io/checkRequirements.php | php -c /etc/php5/apache2/php.ini

Die Ausgabe sieht dann folgendermaßen aus

Fehlende Abhaengigkeiten
========================

default         x  In der php.ini muss der zend.multibyte auf 1 gesetzt werden. Aktuell steht der Wert auf .

Verfügbare Tests

In der folgenden Tabelle sind Klassen für die Tests aufgeführt.

KlasseBeschreibungBeispiel
\Alvine\Util\Dependency\Rule\ComponentPrüft ob eine Alvine-Komponente eingebunden wurde
new \Alvine\Util\Dependency\Rule\Component($namespace, $version)
\Alvine\Util\Dependency\Rule\PhpIniPrüft eine PHP-Einstellung
new \Alvine\Util\Dependency\Rule\PhpIni($key, $expectedValue)
\Alvine\Util\Dependency\Rule\PhpModulePrüft ob ein PHP-Modul verfügbar ist
new \Alvine\Util\Dependency\Rule\PhpModule($name)
\Alvine\Util\Dependency\Rule\VersionPrüft die gewünschte Version installiert ist
new \Alvine\Util\Dependency\Rule\Version($requiredVersion, $installedVersion)
\Alvine\Util\Dependency\Rule\ValidImmer gültig
new \Alvine\Util\Dependency\Rule\Valid()
\Alvine\Util\Dependency\Rule\InvalidImmer ungültig
new \Alvine\Util\Dependency\Rule\Invalid()

 

 


Ressourcen

 


Feedback

Waren diese Informationen hilfreich?

 


Historie

Version Datum Kommentar
Aktuelle Version (v. 6) 04.Jan.2017 14:40 Volker Schukai
v. 5 02.Jan.2017 19:36 Volker Schukai
v. 4 02.Jan.2017 19:28 Volker Schukai
v. 3 02.Jan.2017 16:14 Volker Schukai
v. 2 02.Jan.2017 15:53 Volker Schukai
v. 1 02.Jan.2017 13:20 Volker Schukai

 

Schreiben Sie einen Kommentar...