Kraftfuld og innovativ webramme

Kort opsummering


UCMS er en milepæl i webudvikling

Introduktion

UCMS er et nyt revolutionerende PHP framework / CMS til udvikling af internationaliserede virksomhedswebapplikationer.

Et af de vigtigste funktioner er den fantastiske skabelonmotor, der er baseret på Twigs syntax. Denne skabelonmotor er et helt nyt JavaScript-lignende programmeringssprog.

På grund af kraften i dette nye skabelonsprog kan ting programmeres, der tidligere syntes fuldstændig umuligt.

JavaScript-lignende programmering
  • {% set my_filter = function( number ) {
  • return number & 1
  • }
  • %}
  • <script>
  • var odd_numbers = {{
  • [1, 2, 3].\array_filter(
  • my_filter
  • )
  • }}
  • </script>

Være foran tiderne

Det nye skabelonsprog indeholder mange nye programmeringsparadigmer som en udenlandsk funktionsgrænseflade, anonyme funktioner, tilbagekaldelser, dynamiske tags, funktionsudtryk, metodekædning, currying og scriptability.

Takket være det strålende programmers hårde arbejde er det nye malesprog et almægtigt programmeringssprog, der giver mange nye løsninger og gør det umuligt at gøre det muligt.

Du kan kun få denne nye teknologi her, fordi det ville tage år at udvikle noget lignende.

Dynamiske Tags
  • {% addtag leetspeak as function( words ) {
  • return words.\strtr(
  • 'leet', '1337'
  • )
  • }
  • %}
  • {% leetspeak %}
  • And God said, 'Let there be light'
  • and there was light.
  • {% endleetspeak %}
leetspeak
  • And God said, 'L37 7h3r3 b3 1igh7'
  • and 7h3r3 was 1igh7.

Programmering uden begrænsninger

Du kan kalde enhver funktion eller metode direkte fra dine skabeloner, uanset om det er statisk eller objektorienteret.

Og du kan endda få adgang til dine klassekonstanter og PHP-konstanter direkte.

Få adgang til enhver klasse eller funktion
  • {% set api = new \Your\Api( ucms.database ) %}
  • {{
  • api.doSomething('Hello World',
  • api::ANY_CONSTANT
  • )
  • }}

Programmering på et højere niveau

Med den nye Twig kan du referere til enhver funktion som i JavaScript, uanset om det er en PHP-intern funktion, en objektmetode, en statisk funktion i en klasse eller en skabelonfunktion.

Derudover kan en hvilken som helst PHP intern funktion, en hvilken som helst skabelonfunktion og en hvilken som helst skabelonmakro tilkobles som i JavaScript, så du kan skrive meget læsbar kode, der er let at forstå.

Reference enhver funktion
  • {% set
  • message = "Hello World \u263a",
  • byteLength = \strlen,
  • charLength = \mb_strlen
  • %}
  • Byte length: {{ message.byteLength() }}
  • Char length: {{ message.charLength() }}
Kæde nogen funktion
  • Hello {{ 'dlrow'.\strrev().\ucfirst() }}

Turing fuldstændighed

Det nye skabelonsprog er et programmeringssprog med Turing completeness.

Du kan bruge alle kontrolstrukturer og paradigmer som i ethvert andet moderne programmeringssprog.

Skabeloner og udtryk er kompileret i et abstrakt syntakttræ. Kompilatoren kan registrere og optimere statiske udtryk, således at 1 + 1 for eksempel gemmes som 2 i det abstrakte syntaks træ.

Dette nye revolutionerende skabelonsprog kombinerer fordelene ved PHP, JavaScript og Twig-syntaxen i et nyt utroligt og almægtigt programmeringssprog.

Fuld script-evne
  • {% script %}
  • function calcPi(accuracy = 1000)
  • {
  • pi = 4
  • hi = 4
  • lo = 3
  • ng = true
  • for(i = 0; i < accuracy; i++)
  • {
  • pi += ng ? -(hi / lo) : hi / lo
  • lo += 2
  • ng = !ng
  • }
  • return pi
  • }
  • {% endscript %}

Oversættelser med kontekst

Oversættelige strenge kan defineres meget nemt og ekstraheres automatisk som .po-fil.

En oversættelseskontekst, udtryk, flertalsformer og oversætter kommentarer kan også bruges.

Oversættelser med links og formatering kan oprettes i kombination med markdown-taggen, og endda internationaliserede PDF-dokumenter er mulige.

Det har aldrig været så nemt at oprette internationaliserede applikationer.

SimpleExample.twig
  • {% context 'Views.Application.Example' %}
  • {%- translate -%}
  • Hello world!
  • {%- endtranslate %}
  • {% endcontext %}
Application.po
  • #: Views/Application/SimpleExample.twig:2
  • msgctxt "Views.Application.Example"
  • msgid "Hello world!"
  • msgstr "Hello world!"

Skabelonbaseret PDF generator

Vores system har en skabelonbaseret PDF-generator, der gør det lettere end nogensinde før at oprette internationaliserede forretningsdokumenter.

Vi har implementeret mange funktioner i denne generator, for eksempel UTF-8 og Unicode-support, TTF-Fonts, mange filtre og brug af vilkårlig enheder som em, px, pt, mm, cm, in og%.

Og det er kun en lille del af PDF Generatorens funktioner.

Business PDF
  • <?xml version="1.0" encoding="UTF-8" ?>
  • <pdf size="A4">
  • <header>
  • <p font-size="2em">
  • <strong>
  • {%- trans 'Invoice' -%}
  • </strong>
  • </p>
  • </header>
  • <body>
  • <rotate angle="90" x="50%" y="50%">
  • <text x="50%" y="50%">
  • {%- trans 'Order number:' -%}
  • </text>
  • </rotate>
  • </body>
  • </pdf>

Hurtigere end ren php kode

Der er taget stor omhu for ikke at tilføje unødvendig ballast til koden.

UCMS-kernen kan håndtere forespørgsler uden at udføre database forespørgsler. De eneste forespørgsler, der skal udføres, er dem i din ansøgning.

Skabelonmotoren kan cache genereret indhold, hvilket resulterer i ekstrem hurtig behandling, der er endnu hurtigere end PHP-kode.

Hvis cache-tagget blev anvendt klogt, er UCMS'en endda på en Raspberry Pi hurtigere end noget andet system på en reel webserver.

Cache tag
  • {% cache %}
  • {{
  • yourApi.getItems().renderRows()
  • }}
  • {% endcache %}
Cachelagret indhold
  • ...
  • <p>Website was generated in 1 ms</p>
  • </body>
  • </html>

Enkel styring

Du kan styre din virksomhedslogik som en træstruktur, der indeholder alle relevante egenskaber, herunder adgangsrettigheder, der fungerer på samme måde som i et filsystem.

Træobjektet har en række nyttige metoder, der gør det nemt at generere sitenavigationer som menuer, sidebjælker, navigationsstier og mange flere.

Business Logic

Vil du vide mere?

Ofte stillede spørgsmål

Kan jeg downloade UCMS gratis?

Udvikling af denne software har taget meget tid, penge og erfaring. Disse omkostninger skal dækkes. Af denne grund kræves der en licens til brug af UCMS.

Vil UCMS nogensinde være åben kilde?

Efter at udviklingsomkostningerne er blevet afskrevet, kan vi offentliggøre kildekoden og tillade gratis ikke-kommerciel brug for enkeltpersoner (men ikke virksomheder). Du bør ikke forvente, at det sker i den nærmeste fremtid, snarere i 2021 eller senere.

Hvilke betalingsmetoder kan jeg bruge?

Du kan betale ved bankoverførsel eller PayPal. Kreditkortbetalinger er også mulige via PayPal, alle større kreditkort fra Visa, Mastercard, American Express og Discover accepteres.

Hvornår får jeg licensnøglen?

Du vil modtage licensnøglen og kildekoden, så snart betalingen er blevet krediteret til vores bankkonto. Hvis du betaler med PayPal, sender vi licensnøglen og kildekoden med en forsinkelse på 3-5 dage efter modtagelsen af ​​betalingen for at beskytte os mod betalingssvindel.

Hvad er licensbetingelserne?

Vi giver licenshavere en ikke-eksklusiv, ikke-overførbar, ikke-salgbar, evigvarende licens til at bruge denne software til et internetdomæne. Denne softwarelicens kan ikke overføres til tredjepart eller videresælges.

Kan jeg få en brugerdefineret licens / support?

Ring til os og lad os tale om det. Vi tilbyder mange ekstra tjenester, såsom: Rådgivning, support eller oprettelse af et skelet af din ansøgning, hvis du betaler os for dette. Vi forvalter dog ikke eller vedligeholder nogen projekter, og du skal bruge din egen udvikler til at drive din digitale virksomhed på lang sigt.

Kan jeg offentliggøre mit projekt på Github?

Det er ikke tilladt at videregive eller offentliggøre UCMS kildekoden helt eller delvist. Dette betyder, at du kun kan offentliggøre din egen kode, som du skrev selv, men du kan ikke offentliggøre nogen dele af UCMS-koden som open source på github eller lignende.

Skal jeg få en faktura, hvis jeg køber?

Når du har sendt ordreformularen, vil du selvfølgelig modtage en ordrebekræftelse / pro forma faktura (som er uden skat relevans). Den endelige faktura (og skattelovgivningen) sendes sammen med din licensnøgle og kildekoden efter modtagelse af betaling.

Skal jeg betale moms?

Hvis du bor i en EU-medlemsstat, skal du også betale momsen for dit land. Momssatsen afhænger af den EU-medlemsstat, hvor du bor. Hvis du bor et andet sted, er der ingen moms.

Er UCMS omkostningerne fradragsberettigede?

Sørg for at spørge din revisor! Hvis du er en virksomhed, er chancerne meget gode, at du kan fratrække omkostningerne helt eller i det mindste delvist fra afgiften. I det ideelle tilfælde koster det dig ikke noget for at købe en UCMS-licens.