Klassenfunktionen:

Instanzierung

void LanguageSys( void )
Zur instanzierung kann ein einfaches neues objekt von LanguageSys ertsellt werden.
Du darfst nicht vergessen die Klasse einzubinden!
include('LanguageSys.class.php');
$lang = new LanguageSys();
$lang->...

LanguageSys::set_res_dir

bool set_res_dir( string dir )
Mit dieser funktion wird das Verzeichnis gesetzt, welches nach den Sprachdatein durchsucht werden soll.
Gibt bei erfolg TRUE zurück, im fehlerfall (Verzeichniss existiert nicht) wird FALSE zurückgegeben.
Vor dem ersten aufruf von set_res_dir() ist der pfad auf das verzeichniss ./lang relativ vom eigenen verzeichniss gesetzt. include('LanguageSys.class.php');
$lang = new LanguageSys();
$lang->set_res_dir('./foo/bar/');
$lang->...

LanguageSys::get_aviable_languages

array get_aviable_languages([lsys_return_type type])
Gibt anhand des angegebenen Return types einen Array zurück. Dieser kann numerisch sein und die language codes enthalten (LSYS_RTN_CODES), numerisch sein und Ausgeschriebene sprachbezeichnungen enthalten wie zum beispiel "German (Germany)" (LSYS_RTN_NAMES), eine andere mäglichkeit ist ein Assizioatives array bestehend aus dem sprachcode als bezeichner und der Beschreibung als inhalt (LSYS_RTN_MIXED).
Wenn kein type angegeben wird, so wied als standart LSYS_RTN_CODES genutzt.
Beispiel für LSYS_RTN_CODES: $lang = new LanguageSys();
$languages = $lang->get_aviable_languages();
  print_r($languages);
$lang->...
Könnte zum Beispiel folgendes ausgeben: Array (
  [0] => de_DE
  [1] => en_EN
  [2] => en_US
)
Beispiel für LSYS_RTN_NAMES: $lang = new LanguageSys();
$languages = $lang->get_aviable_languages(LSYS_RTN_NAMES);
  print_r($languages);
$lang->...
Würde folgendes ergeben: Array (
  [0] => German (Germany)
  [1] => English
  [2] => English (United States of America)
)
Beispiel für LSYS_RTN_MIXED: $lang = new LanguageSys();
$languages = $lang->get_aviable_languages(LSYS_RTN_MIXED);
  print_r($languages);
$lang->...
Würde folgendes ergeben: Array (
  [de_DE] => German (Germany)
  [en_EN] => English
  [en_US] => English (United States of America)
)

LanguageSys::load

bool load( string language_code )
Die funktion load() wird benutzt, um eine Sprachdatei zu laden, nach dem Laden ist die Sprachdatei verfügbar und die Variablen werden initialisiert.
Wenn vorher schon eine Sprachdatei geladen war und eine neue geladen wird so werden die Variablen nicht gelöscht, nur die die auch in der neu geladenen datei angegeben sind werden überschrieben.
Dies verhält sich so für den fall, das zum Beispiel eine zu alte Sprachdatei verwendet wurde, insofern dann vorher eine Standartsprache geladen wurde sind die nicht vorhandenen einträge in der Standartsprache.
Bei erfolg wird TRUE zurückgegeben, bei einem fehler wird FALSE zurückgegeben. Zur fehlerbehandlung siehe LanguageSys::last_error(). $lang = new LanguageSys();
//Laden der Sprachdatei für Englisch.
$lang->load('en_EN');
//Ausgeben des inhaltes "foo".
print $lang->foo;

LanguageSys::compile

bool compile(string sourcefile, string destinationfile)
Die Compile-Funktion wird benutzt, um eine Datei vorzukompilieren.
Dabei muss für sourcefile und destinationfile ein vollständiger pfad angegeben werden, der resource dir wird nicht benutzt.
Durch das Kompilieren wird das Parsen erheblich schneller, nach möglichkeit sollten deswegen vorkompilierte datein verwendet werden.
Mehr dazu siehe "Vorkompilieren". Beispiel: $lang = new LanguageSys();
$lang->compile('./uncompiled/en_EN.ini', './compiled/en_EN.lng');
$lang->...

LanguageSys::_parse

private mixed _parse( string &code )
Die Methode _parse wird intern von LanguageSys verwendet um die Daten aus einer Vorkompilierten Sprachdatei zu gewinnen.
Sie ist nicht für den normalen gebrauch gedacht.

LanguageSys::_pparse

private mixed _pparse( array &code )
Die Methode _pparse wird intern von LanguageSys verwendet um die Daten aus einer Sprachdatei zu gewinnen.
Sie ist nicht für den normalen gebrauch gedacht.

LanguageSys::_error

private void _error(lsys_error_type type, string message [, int line])
Die Methode _error wird intern von LanguageSys verwendet um einen Fehler in den Fehlerpuffer zu schreiben.
Sie ist nicht für den normalen gebrauch gedacht. Kann aber sinnvol in abgeleiteten klassen eingesetzt werden.

LanguageSys::last_error

string last_error( void )
Gibt den zu letzt aufgetretenen fehler zurück.
Wenn noch kein fehler aufgetreten ist, so wird FALSE zurückgegeben.
last_error() wird normalerweise im zusammenhang mit load() und compile() benutzt.
Beispiel: ...
if( !$lang->load('en_EN') )
{
  die($lang->last_error());
}
...

LanguageSys::get_fileinfo

string get_fileinfo(string info)
Gibt einen in der sektion [info] der Sprachdatein angegbenen werte zurück.
Wenn der wert nicht vorhanden ist wird NULL zurückgegeben.
...
if( !$lang->load('en_EN') )
{
  die($lang->last_error());
}
//Übersetzungsinformationen ausgeben..
print $lang->get_fileinfo('translation_info');
...

LanguageSys::get_author

string get_author( void )
Alias für LanguageSys::get_fileinfo('author')

LanguageSys::get_transinfo

string get_transinfo( void )
Alias für LanguageSys::get_fileinfo('translation_info')

LanguageSys::get_version

string get_version( void )
Alias für LanguageSys::get_fileinfo('version')

LanguageSys::get_application

string get_application( void )
Alias für LanguageSys::get_fileinfo('application')