Descarga

Descargar UIEngine

Versión actual v16 – auditada externamente, PHP 8.1+, sin dependencias.

¿Qué incluye?

Requisitos del sistema

Instalación rápida

unzip UIEngine_v16.zipcd UIEngine
require 'src/Autoload.php';

Los pasos detallados, incluyendo la asignación de variables y tu primera plantilla, están en la guía.

Todas las versiones

Versiones anteriores para instalar: cada una con sus cambios destacados y su propio contador de descargas.

v16 Actual
Publicada: 2026-10-02 Tamaño: 108 KB Descargas: 1
↓ Descargar
Cambios
  • KRITISCH – Stored-RCE über den Seiten-Cache geschlossen.
  • {math} Division/Modulo durch Null warf einen ungefangenen
  • {for … step 0} erzeugte eine Endlosschleife – jetzt durch ein
  • Log-Injection – Logger neutralisiert Zeilenumbrüche in
  • Seiten-Cache-Invalidierung berücksichtigt jetzt {include}/
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v15
Publicada: 2026-07-31 Tamaño: 104 KB Descargas: 0
↓ Descargar
Cambios
  • {fetch}-Path-Traversal-Bypass (mittel-hoch, LFI/SSRF):
  • {$engine.const.*} gab standardmäßig alle PHP-Konstanten frei
  • CacheManager::__construct(null) crashte beim ersten Zugriff auf
  • Debug war standardmäßig aktiviert (__construct(bool $status = true)):
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v14
Publicada: 2026-07-19 Tamaño: 101 KB Descargas: 0
↓ Descargar
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v12
Publicada: 2026-07-19 Tamaño: 93 KB Descargas: 0
↓ Descargar
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v11
Publicada: 2026-07-19 Tamaño: 92 KB Descargas: 0
↓ Descargar
Cambios
  • composer.json mit PSR-4-Autoloading unter UIEngine\ ergänzt.
  • src/libs/ → src/Libs/ umbenannt, damit Ordner-Großschreibung exakt zum
  • src/Autoload.php entsprechend vereinfacht (kein Spezialfall mehr nötig).
  • demo/example.php bevorzugt jetzt vendor/autoload.php, falls per
  • phpunit.xml + tests/ mit ExpressionCompilerTest (Sicherheitsgrenzen:
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v10
Publicada: 2026-07-19 Tamaño: 78 KB Descargas: 0
↓ Descargar
Cambios
  • Die interne Hilfsklasse für {$engine.const.*} wurde umbenannt zu
  • Die private Methode zum Aufbau der reservierten Variable heißt jetzt
  • Alle Doku-Kommentare mit vergleichenden Formulierungen umformuliert, ohne
  • Alle Demo-Templates (docs-full.tpl, _cache-demo.tpl, _nocache-demo.tpl,
  • Alle bisherigen Changelog-Einträge (v2-v9) nachträglich umformuliert, damit
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v9
Publicada: 2026-07-19 Tamaño: 78 KB Descargas: 0
↓ Descargar
Cambios
  • {nocache}...{/nocache}: schließt die in Schritt 3 dokumentierte
  • {eval var=$expr assign=x}: kompiliert einen String zur Laufzeit als
  • {fetch file='pfad-oder-url' assign=x}: liest eine lokale Datei oder
  • {insert} bewusst NICHT nachgebaut (in vielen modernen Template-Engines aus denselben Gründen mittlerweile
  • HTML-Formular-Helfer als neue Klasse HtmlHelpers (statische Methoden
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v8
Publicada: 2026-07-19 Tamaño: 70 KB Descargas: 0
↓ Descargar
Cambios
  • {for $i=1 to 10 step 1}...{/for}: klassische Zählschleife. Die
  • {while $expr}...{/while}: kopfgesteuerte Schleife.
  • {break} / {continue}: Schleifensteuerung für {foreach}, {for}
  • {counter name=x start=1 step=1 print=true assign=y}: eigenständiger
  • {cycle values='a,b,c' name=x}: wechselt bei jedem Aufruf durch eine
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v7
Publicada: 2026-07-19 Tamaño: 65 KB Descargas: 0
↓ Descargar
Cambios
  • Neue Modifier: cat, count_characters, count_paragraphs,
  • {$var=wert}: Kurzform für {assign var=var value=wert}.
  • {append var=x value=y}: hängt einen Wert an eine (Array-)
  • {ldelim} / {rdelim}: geben die aktuell konfigurierten
  • docs-full.tpl um Abschnitt "1g" mit Live-Beispielen aller Stufe-A-
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v6
Publicada: 2026-07-19 Tamaño: 63 KB Descargas: 0
↓ Descargar
Cambios
  • Alle betroffenen Doku-Kommentare/Fließtext-Erwähnungen in docs-full.tpl
  • Compiler robuster gemacht: {if}/{elseif}/{else}/{/if} und
  • {/blockplugin} ohne zugehöriges {blockplugin} löst jetzt eine
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v5
Publicada: 2026-07-19 Tamaño: 61 KB Descargas: 0
↓ Descargar
Cambios
  • Block-Plugins: PluginManager::registerBlock($name, $handler) +
  • Compiler-Plugins: TemplateCompiler::registerCustomTag($name, $fn)
  • Pre-/Post-/Output-Filter: Template::registerPreFilter() (läuft auf
  • Echtes Seiten-Output-Caching: display($file, $cacheId, $lifetime) -
  • Konfigurierbare Security-Sandbox: neue Klasse SecurityPolicy +
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v4
Publicada: 2026-07-19 Tamaño: 53 KB Descargas: 0
↓ Descargar
Cambios
  • {function name=x param=default}...{/function}: Wiederverwendbare
  • {block name append} / {block name prepend}: Kind-Templates können
  • {$engine.now} / {$engine.const.NAME} / {$engine.template}:
  • Konfigurierbare Tag-Delimiter: TemplateCompiler::setDelimiters($left, $right)
  • docs-full.tpl um die Abschnitte "1d" (Funktionen/$engine) erweitert,
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v3
Publicada: 2026-07-19 Tamaño: 47 KB Descargas: 0
↓ Descargar
Cambios
  • {foreach}-Metadaten: $item@index (0-basiert), $item@iteration
  • |escape:'url' und |escape:'javascript' als zusätzliche
  • {strip}...{/strip}: Entfernt Whitespace zwischen HTML-Tags im
  • Demos für alle drei Features in docs-full.tpl ergänzt (Abschnitte "1b"
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v2
Publicada: 2026-07-19 Tamaño: 44 KB Descargas: 0
↓ Descargar
Cambios
  • {math ...} war praktisch eval(): Der rohe Ausdruck wurde 1:1 in
  • {plugin args='...'} interpolierte den args-String roh in Code.
  • Path Traversal in Template::display()/neu renderInclude().
  • DEV_MODE/DISPLAY_ERRORS standardmäßig true. Jetzt standardmäßig
  • PathManager::getAsset(): Durch die Operator-Priorität von . vor ??
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.
v1
Publicada: 2026-07-19 Tamaño: 33 KB Descargas: 0
↓ Descargar
Comentarios (0)

Aún no hay comentarios sobre esta versión. ¡Sé el primero!

Escribir un comentario

Código: ```lenguaje … ``` para bloques, `…` para código en línea.

No hace falta iniciar sesión. Por favor, no publiques datos personales.

Licencia

Las condiciones exactas de la licencia se incluyen en el paquete de descarga. Consúltalas antes si tienes dudas sobre el uso en tu proyecto.