PHP: ZIP-Archiv erstellen

Die kleine Hilfsklasse „ZipHelper“ ermöglicht es, auf einfache Weise Zip-Archive mit PHP zu erstellen. Die Dateien und Verzeichnisse lassen sich auf verschiedene Arten über die Methode „addSource“ zu dem Archiv hinzufügen. Verzeichnisse werden rekursiv durchlaufen.

Beispiel:

  $oZipHelper = new ZipHelper("my_archiv.zip");
  $oZipHelper->addSource('*.txt')
             ->addSource('*.php')
             ->addSource('../')
             ->addSource('/test.txt')
             ->addSource(array('/home/sklueh/write.sh',
                               '/home/sklueh/config.php'))
             ->addSource('/home/sklueh/my_directory')
             ->create();

PHP: ZIP-Archiv erstellen weiterlesen

Lightweight-PHP-Validator: Neue Version

Neue Features:
– Unterstützung von Fehlermeldungen
– Mehrsprachigkeit (deutsch / englisch) über Annotations
– Manuelles Festlegen einer Validierungsklasse

Definition der Fehlermeldungen über Annotations:
In der Validierungsklasse „ValidatorRules“ können die Fehlermeldungen in beliebig vielen Sprachen mit Hilfe von Annotations hinterlegt werden.

/**
 * @ErrorMessage[lang=de] Bitte geben Sie eine Zahl an, die kleiner ist als %.2f.
 * @ErrorMessage[lang=en] Please enter a number less than %.2f.
 */

public function check_less_than($mValue, $aParams)
{
    return (number_format($mValue, 15) < $aParams[0]);
}

Sprache festlegen:
Die Sprache in der die Fehlermeldungen zurückgegeben werden sollen, lässt sich im Validator ganz einfach über die Funktion „setLanguage“ festlegen.

$oValidator = new Validator();
$oValidator->setLanguage('de'); //Deutsch

Validieren und Fehlermeldung auslesen:
Die jeweilige Fehlermeldung kann direkt nach der Validierung über die Funktion „getLastErrorMessage“ ermittelt werden.

$oValidator->setLanguage('de');
$oValidator->isValid("15", 'less_than[10.90]'); //false
echo $oValidator->getLastErrorMessage();
//Bitte geben Sie eine Zahl an, die kleiner ist als 10.90.

//Nochmal auf Englisch
$oValidator->setLanguage('en');
$oValidator->isValid("15", 'less_than[10.90]'); //false
echo $oValidator->getLastErrorMessage();
//Please enter a number less than 10.90.

Lightweight-PHP-Validator: Neue Version weiterlesen

RedBeanPHP – Die einfach zu verwendende ORM-Bibliothek

RedBeanPHP ist eine einfach zu verwendende ORM-Bibliothek, die die Vorteile eines dokumentenorientierten Datenbanksystems wie z.B. mongoDB und eines relationalen Datenbanksystems vereint. RedBeanPHP kann direkt eingesetzt werden und erfordert keine aufwändige Konfiguration.

Anwendungsbeispiel:

//RedBeanPHP einbinden
require_once('rb.php');

//Datenbankverbindung einrichten
R::setup('mysql:host=localhost;dbname=test','root','password');

/*
Einen neuen Datensatz erzeugen
- Die Tabelle wird automatisch angelegt!
*/

$oEntry = R::dispense('mytable');
$oEntry->title = 'Hello World';

//Datensatz speichern
$iID = R::store($oEntry);

//Laden der gespeicherten Daten
$oEntry = R::load('mytable', $iID);

//Anzeigen des Titels
echo $oEntry->title;

Link: http://redbeanphp.com/
GitHub: https://github.com/gabordemooij/redbean