KAVALEK.NET 
-Blog
Linux Web development C/C++ Python LaTeX Rallye Ostatní
-Projekty
PyGaM PHP WIS Class PHP Atom Class
-Webdesign
Nabídka Reference
-Ostatní
Aktuality Odkazy Informace
-Osobní
Kontakt CV
-Intranet
Mail server Print server Security camera

KUBUNTU
XHTML Valid
Smarty
jQuery
View Tomáš Kavalek's profile on LinkedIn

Web development: Načtení definic z XML

Zobrazit obsah
Zobrazit komentáře | Zobrazit pouze komentáře

V jednom větším projektu používám různé jazykové mutace hlášení, textů, popisků apod. Byl jsem zvyklý používat definic jako v jazyku C/C++ (define). Chtěl jsem ale, aby vše fungovalo lépe a bez potřebné znalosti PHP pro budoucího překladatele. Vše se tedy řeší pomocí XML souboru. Ve funkci pro zpracování XML je použitu simplexml_load_file, což omezuje použití pouze pro PHP 5 a vyšší.

lang_loader()

Následující funkce načítá soubor XML, zpracovává a výtváří konstanty define.

function lang_loader($filename) {
  $definitions = simplexml_load_file($filename);
  foreach($definitions->definition as $definition) {
    $definition_value = iconv("UTF-8", "ISO-8859-2", $definition->value);
    eval("define('{$definition->name}', '{$definition_value}');");
  }
}

Soubor s jazykovou verzí může vypadat následovně (ukázka jazykového balíčku k sadě funkcí db_sql - vlastní sada funkcí pro práci s MySQL):

<?xml version="1.0" encoding="iso-8859-2" ?>
<definitions>
  <definition>
    <name>DB_ERROR</name>
    <value>Chyba: %s | %s</value>
  </definition>
  <definition>
    <name>DB_CONNECT_ERROR</name>
    <value>Chyba spojení s databází: %s | %s</value>
  </definition>
  <definition>
    <name>DB_SELECT_ERROR</name>
    <value>Chyba výběru databáze: %s</value>
  </definition>
  <definition>
    <name>DB_QUERY_ERROR</name>
    <value>Chyba zpracování dotazu: %s</value>
  </definition>
</definitions>

11.12.2006 01:09:33 - 1009x
Hodnocení (189)

Rating - 50% 50%

DOBRÉ | ŠPATNÉ

Komentáře k tématu 'Načtení definic z XML' (0 komentářů)

Vložit komentář | Zobrazit pouze komentáře | Nahoru
Ještě nebyl vložen žádný komentář. Pro vložení prvního komentáře klikněte zde.

Vyhledávání

 
Google

Reklama

Knihy
© 2004 - 2008 Tomáš Kavalek - Obsah webu, zdrojové kódy a projekty lze používat a dále šířit dle GNU GPL. V diskuzích mně můžete tykat.