Variabile de sistem

Pentru a utiliza aceste variabile, pur și simplu le obțineți din obiectul $ f3, ca în:

referință

AGENT

Tip: șir, numai în citire

Un șir care conține agentul de utilizator HTTP detectat automat, de ex. „Mozilla/5.0 (Linux; Android 4.2.2; Nexus 7) AppleWebKit/537.31”

Tip: bool, numai în citire

ADEVĂRAT dacă este detectată o solicitare XML XML, altfel FALS. Valoare implicită: Rezultatul expresiei $ headers ['X-Requested-With'] == 'XMLHttpRequest'

ALIAS

Tip: şir

Conține aliasul (numele) traseului curent. Goliți dacă ruta curentă nu este denumită.

ALIASES

Tip: matrice

Această matrice conține toate rutele denumite care pot fi utilizate pentru a reda adresele URL de legătură corespunzătoare în șabloanele dvs.

AUTOLOAD

Tip: șir | matrice Mod implicit: „./”

Căutați calea (** s **) pentru clasele PHP definite de utilizator pe care cadrul va încerca să le încarce automat în timpul rulării. Când specificați mai multe căi, puteți utiliza o conductă (|), virgulă (,) sau punct și virgulă (;) ca separator de cale.

Vezi aici pentru mai multe detalii.

Tip: șir, numai în citire Mod implicit: detectat automat

Calea către controlerul principal/frontal index.php.

Tip: șir, numai în citire

Corp de solicitare HTTP pentru post-procesare ReSTful. Conține fluxul de intrare php: // utilizat de solicitările PUT, dacă RAW este fals .

CACHE

Tip: bool | șir Mod implicit: FALS

Backend cache. F3 poate gestiona modulul Memcache, APC, WinCache, XCache și un cache bazat pe sistemul de fișiere.

De exemplu: dacă doriți să utilizați modulul memcache, este necesar un șir de configurare, de ex. $ f3-> set ('CACHE', 'memcache = localhost') (portul 11211 implicit) sau $ f3-> set ('CACHE', 'memcache = 192.168.72.72: 11212') .

Când este setat la TRUE sau când conexiunea cu serverul memcached specificat mai sus a eșuat, F3 va detecta automat, în această ordine, prezența APC, WinCache, XCache și va folosi primul disponibil dintre aceste module PHP. Dacă niciunul dintre aceste motoare de memorie partajată nu a fost detectat sau nu este disponibil, un backend bazat pe sistemul de fișiere este utilizat ca alternativă (director implicit: tmp/cache sau puteți specifica un folder în afara scopului site-ului web, de exemplu ('CACHE', 'folder =/var/tmp/f3filescache /') .

Cadrul nu folosește niciun motor cache atunci când este atribuită o valoare FALSĂ.

FĂRĂ CASEL

Tip: bool Mod implicit: ADEVĂRAT

Potrivirea de tipare a rutelor cu URI-urile de intrare nu face sensibilitatea la majuscule și minuscule. Setați la FALS pentru a face sensibile la majuscule și minuscule.

Tip: bool, numai în citire

ADEVĂRAT dacă solicitarea provine din interfața liniei de comandă, FALS dacă provine de la serverul web.

Consultați modul CLI pentru mai multe detalii despre cum să gestionați solicitările CLI.

CONTENITOR

Tip: apelabil | Prefab | Psr \ Container \ ContainerInterface

Definește containerul opțional de injecție de dependență utilizat de Base-> call () și sistemul de rutare. CONTAINER acceptă containere PSR-11, apelabile și clase care extind prefabricate. Clasele bazate pe prefabricate trebuie să implementeze metoda get (șir $ id). Callable primește $ id solicitat (de exemplu, numele clasei) ca primul argument.

Containerele terță parte incompatibile cu API pot fi compatibile cu un adaptor mic.

NB: CONTAINER necesită cel puțin un cadru fără grăsimi 3.6.4 .

COOKIE, OBȚINE, POST, CERERE, SESIUNE, FIȘIERE, SERVER, ENV

Tip: matrice

Echivalenți cadru de PHP globali. Pentru confortul dvs., F3 sincronizează automat aceste variabile cu PHP-urile subiacente. Aceste variabile pot fi utilizate în întreaga aplicație. Cu toate acestea, utilizarea directă în șabloane nu este recomandată din cauza riscurilor de securitate.

Ar putea fi posibil ca configurația PHP să nu populeze toți globalii. Dacă, de exemplu, lipsesc variabilele de mediu, atunci trebuie să adăugați E la directiva de configurare PHP variables_order .

Tip: matrice

Parametri de configurare pentru partajarea resurselor încrucișate. Constă din următoarele opțiuni:

  • anteturi, șir sau matrice, implicit: '', anteturile permise în cerere
  • origine, șir sau fals, implicit: fals, gazdă de origine permisă, adică * .domeniul meu.com
  • acreditări bool, implicit: fals, permite cookie-urile
  • expune, șir sau matrice, implicit: fals, controlează anteturile din răspuns sunt expuse browserului client
  • ttl, int, detault: 0, timpul de stocare în cache a cererii OPTIONS de control anticipat

Pentru a activa asistența de bază CORS, trebuie doar să setați CORS.origin la *. Pentru o configurare mai definită, puteți utiliza $ f3-> copy ('HEADERS.Origin', 'CORS.origin'); .

DEBUG

Tip: întreg Mod implicit: 0

Nivelul de verbozitate al urmelor stivei. Atribuiți valori cuprinse între 0 și 3 pentru creșterea nivelurilor de detaliere după cum urmează:

  • 0: suprimă jurnalele urmăririi stivei.
  • 1: jurnalele de fișiere și linii.
  • 2: clasele și funcțiile jurnalelor, de asemenea.
  • 3: înregistrează și informații detaliate despre obiecte.

DIACRITICĂ

Tip: matrice Mod implicit: matrice (), matrice goală

Perechi cheie-valoare suplimentare pentru traduceri de caractere străine în ASCII, așa cum se utilizează în web-> slug.

DNSBL

Tip: şir Mod implicit: '', Șir gol

Lista separată prin virgulă a serverelor DNS pe lista neagră Framework generează o eroare interzisă 403 dacă adresa IPv4 a utilizatorului este listată pe serverul (serverele) specificat (e).

EMOJI

Tip: matrice Mod implicit: matrice (), matrice goală

Perechi suplimentare cheie-valoare de jetoane emoji de adăugat la setul de bază utilizat la traducerea unui șir în simboluri acceptate de font Unicode. (vezi \ UTF-> emojify ())

CODAREA

Tip: şir Mod implicit: „UTF-8”

Set de caractere utilizat pentru codificarea documentelor.

EROARE

Tip: matrice, numai în citire

Informații despre ultima eroare HTTP care a apărut:

  • ERROR.code este codul de stare HTTP. de exemplu. 307
  • ERROR.status este o scurtă descriere a codului de stare HTTP. de exemplu. „Redirecționare temporară”
  • ERROR.text conține o scurtă descriere a erorii.
  • ERROR.trace este utilizat pentru erorile HTTP 500, pentru a prelua urmele stivei. şir
  • ERROR.level - nivel de raportare a erorilor (E_WARNING, E_STRICT etc.)

EVADARE

Tip: bool Mod implicit: ADEVĂRAT

Folosit pentru a activa/dezactiva auto-evadarea @tokens utilizate în șabloane.

SCUTI

Tip: şir Mod implicit: NUL

Lista separată prin virgulă a adreselor IPv4 pentru a scuti de căutările DNSBL.

EXCEPȚIE

Tip: obiect Mod implicit: NUL

Conține obiectul de excepție atunci când apar excepții care nu sunt tratate.

DA ÎNAPOI

Tip: şir Mod implicit: „ro”

Limba (și dicționarul) de utilizat dacă nu este disponibilă nicio traducere.

FORMATE

Tip: matrice

Stocare pentru reguli de format personalizate pentru a adăuga suport pentru mai multe formate de localizare sau alte cazuri. Vezi mostre de cod.

FRAGMENT

Tip: şir Mod implicit: NUL

Porțiune din URI după simbolul hash opțional (#) (http://www.example.org/foo.html#bar) FRAGMENT = 'bar'.

Tip: bool Mod implicit: ADEVĂRAT

Dacă este ADEVĂRAT, cadrul, după ce a înregistrat urmărirea și erorile stivei, oprește execuția (mor fără nici o stare) atunci când este detectată o eroare non-fatală.

CAPI

Tip: matrice, numai în citire

Anteturi de solicitare HTTP primite de server. de exemplu. (simplificat)

A SUBLINIA

Tip: bool Mod implicit: FALS

Activați/dezactivați evidențierea sintaxei a urmelor stivei și a blocurilor de cod Markdown. Când este activat, necesită foaia de stil code.css.

Tip: șir, numai în citire

Numele gazdei serverului.

Tip: șir, numai în citire

Adresă IP la distanță. Cadrul derivă adresa din anteturi dacă clientul HTTP se află în spatele unui server proxy. Valoare implicită: prima potrivire a Client-IP apoi X-Forwarded-Pentru apoi $ _SERVER ['REMOTE_ADDR'], altfel setată la ''

Tip: matrice

Parametrii cookie-ului implicit. Constă din următoarele opțiuni:

  • expiră marcajul de timp Unix, când cookie-ul ar trebui să expire. Implicit: 0
  • cale Calea de pe server în care cookie-ul va fi disponibil. Mod implicit: '/'
  • domeniu Domeniul pentru care cookie-ul este disponibil. Implicit: $ _SERVER ['SERVER_NAME'] dacă este disponibil, altfel ''
  • securizat Setați modulul cookie atunci când există o conexiune HTTPS sigură. Implicit: $ _SERVER ['HTTPS'] == 'on'
  • Puteți face cookie-ul accesibil numai prin protocolul HTTP. Implicit: ADEVĂRAT

De asemenea, puteți viziona un videoclip care trece prin utilizarea cookie-urilor în Fat-Free Framework.

LIMBA

Tip: şir Mod implicit: detectat automat

Limba (limbile) curentă (e). Valoarea este utilizată pentru a încărca fișierele de traducere a limbii (limbilor) corespunzătoare în dosarul indicat de LOCALES. Implicit: detectat automat din antetul cererii HTTP Accept-Language, de ex. „en-US, en, es” .

NB: Sistemul local este încărcat corespunzător acestei variabile. De exemplu:

Consultați secțiunea Localizare din bază pentru mai multe detalii și un exemplu.

LOCALE

Tip: şir Mod implicit: „./”

Locația limbii (dicționarilor).

Pentru a activa stocarea în cache a dicționarelor dintr-un fișier de configurare, trebuie să o scrieți astfel:

LOGGABLE

Tip: șir | matrice Mod implicit: „*”

Puteți furniza acest lucru fie cu o matrice, fie cu o listă separată de virgulă/punct și virgulă a codurilor de stare HTTP pentru a permite trecerea în funcția error_log () atunci când apare o eroare. Acest lucru este util mai ales atunci când creați o aplicație CLI cu rute FatFree și trebuie să interceptați o eroare 404 care nu a fost găsită și să afișați un mesaj sau o acțiune personalizată.

Tip: şir Mod implicit: „./”

Locația jurnalelor personalizate.

ONERROR

Tip: amestecat Mod implicit: NUL

Funcție de apel invers pentru a fi utilizată ca gestionare de erori personalizată sau NULL .

ONREROUTE

Tip: amestecat Mod implicit: NUL

Funcție de apel invers care este apelată înainte de trimiterea antetelor de redirecționare. Comportamentul implicit (redirecționare 301/302) va fi ocolit dacă nu este returnat FALS.

PACHET

Tip: șir | nul Mod implicit: „Cadrul fără grăsimi”

Un șir care conține antetul X-Powered-By.

Dacă este gol, antetul nu este trimis.

PARAMS

Tip: matrice Mod implicit: array ()

Valorile capturate ale jetoanelor definite într-un model route (). PARAMS [0] conține adresa URL capturată în raport cu rădăcina Web.

Tip: șir, numai în citire

Adresa URL relativă la BASE. Valoare implicită: parse_url ($ _ SERVER ['REQUEST_URI'], PHP_URL_PATH)

MODEL

Tip: șir, numai în citire

Conține modelul de rutare care se potrivește cu URI-ul de solicitare curent.

PLUGINS

Tip: şir Mod implicit: __DIR __. '/'

Locația pluginurilor F3. Valoarea implicită este folderul în care se află codul cadru, adică calea către bază.php .

Tip: întreg, numai în citire

Port de ascultare TCP/IP utilizat de serverul Web. Valoare implicită: $ _SERVER ['SERVER_PORT'] sau NULL dacă nu este disponibil.

PREFIX

Tip: şir Mod implicit: NUL

Prefix pentru a fi utilizat cu LIMBA și LOCALE.

De exemplu, dacă fișierul dvs. de dicționar conține hello = Hello World, termenul va fi accesibil prin:

  • $ f3-> get ('salut') fără prefix
  • $ f3-> get ('DICT.hello') if PREFIX = DICT. (Observați. Este intenționat)

PREMAP

Tip: şir Mod implicit: '', Șir gol

Această variabilă permite gestionarea rutelor mapate să fie prefixate. De exemplu, definirea:

este la fel ca definirea:

INTREBARE

Tip: șir, numai în citire

Conține șirul de interogare URI de solicitare (toate după semnul întrebării?).

LINIȘTE

Tip: bool Mod implicit: FALS

Comutator de comutare pentru suprimarea sau activarea mesajelor de ieșire și de eroare standard. Este deosebit de util în testarea unitară.

Tip: bool Mod implicit: FALS

RAW ar trebui să fie ADEVĂRAT atunci când se prelucrează date mari provenind de la intrare php: // care nu se potrivește în memorie (cf. BODY).

REALM

Tip: șir, numai în citire

Adresă URL canonică completă. Valoare implicită: Rezultatul „http (s): //'.$_SERVER ['SERVER_NAME']. $ _ SERVER ['REQUEST_URI']

RASPUNS

Tip: șir, numai în citire

Corpul ultimului răspuns HTTP. F3 completează această variabilă, indiferent de setarea QUIET.

Tip: șir, numai în citire

Calea absolută către folderul rădăcină al documentului.

RUTE

Tip: matrice Mod implicit: array ()

Conține rutele de aplicație definite.

SISTEM

Tip: șir, numai în citire

Protocol server. Implicit: „http” sau „https”

Tip: şir

Șirul SEED este utilizat ca nume de prefix pentru intrările cache și numele de fișiere temporare pentru a evita coliziunile cheii cache. În cazul în care utilizați mai multe domenii cu aplicația dvs., valoarea SEED generată automat ar fi diferită în mod implicit. Dacă doriți să partajați o memorie cache și un fișier temporar comun pentru ambele domenii, setați un SEED personalizat înainte de a inițializa CACHE:

NB: Cheia SEED este de asemenea utilizată pentru generarea de jetoane CSRF în cadrul handlerelor de sesiune.

SERIALIZATOR

Tip: şir Mod implicit: detectat automat

Serializatorul implicit utilizat de metoda serialize "> Base-> serialize () method. Valoare implicită: igbinary dacă este disponibil, altfel php .

Tip: şir Mod implicit: „tmp /”

Dosar temporar pentru cache, blocări sistem de fișiere, șabloane F3 compilate etc. Valoarea implicită este folderul „tmp /” din rădăcina Web. Ajustați corespunzător pentru a vă conforma politicilor de securitate ale site-ului dvs.

Când utilizați Google App Engine (GAE) pentru a vă implementa aplicația, este recomandat să o setați la un director de stocare în cloud.

Tip: pluti Mod implicit: detectat automat

Ora de începere a cadrului. Valoare implicită: ora Unix curentă în secunde, exactă până la cea mai apropiată microsecundă, conform funcției PHP microtime (** TRUE **).

Tip: şir Mod implicit: detectat automat

Fus orar de utilizat. Modificarea acestei valori apelează automat funcția PHP de bază date_default_timezone_set (). Consultați lista de fusuri orare acceptate pentru a obține o posibilă valoare de utilizat aici. Revine la „UTC” dacă eșuează detectarea automată.

Tip: şir Mod implicit: „./”

Căutați calea pentru fișierele interfeței utilizator utilizate de metoda render () a claselor Vizualizare și Șablon.
Acceptă o țeavă (|), virgulă (,) sau punct și virgulă (;) ca separator pentru mai multe căi.

DESCĂRCA

Tip: sună din nou Mod implicit: NUL

Definește gestionarul de închidere pe care cadrul îl va executa la închiderea aplicației.

ÎNCĂRCĂRI

Tip: şir Mod implicit: „./”

Director unde sunt salvate încărcările de fișiere.

Tip: şir Mod implicit: detectat automat

O referință la URI-ul curent de solicitare HTTP.

Tip: şir Mod implicit: detectat automat

O referință la metoda curentă de solicitare HTTP.

VERSIUNE

Tip: şir Mod implicit: de exemplu. „3.2.1-Release”

Un șir care conține versiunea Framework.

XFRAME

Tip: șir | NUL Mod implicit: de exemplu. „SAMEORIGIN”

Un șir care conține antetul X-Frame-Options.

Dacă este gol, antetul nu este trimis.

Directive șablon

Jeton

Înlocuiți @token cu valoarea variabilei F3 echivalente.

Evaluează expresia expr. Expresia poate include jetoane șablon, constante, operatori (unari, aritmetici, ternari și relaționali), paranteze, convertoare de tipuri de date și funcții. Dacă nu este un atribut al unei directive șablon, rezultatul este ecou.

Exprimarea expresiei expr a scăpat. Acesta este comportamentul implicit al cadrului. | sufixul esc este necesar numai dacă variabila globală ESCAPE a fost setată la FALS .

Exprimați expresia expr nescapată. Deoarece F3 auto-scapă jetoanele șir în mod implicit, puteți utiliza acest sufix pentru a ocoli scăparea unui anumit jeton.

Redați expresia expr în format ICU și treceți argumentele separate prin virgulă, unde arg0, ..., argN este utilizat în expr ca referință, fiecare cu un formatator opțional care poate fi unul dintre: „dată”, „oră”, „număr 'sau' plural '(sunt posibile opțiuni suplimentare de formatare). Aruncați o privire la metoda formatului pentru mai multe exemple de utilizare. Mai multe informații despre formatarea numerelor, valutelor, datelor și orelor ICU. Eșantion: - timp: - preț: ', timp (), @ preț | format >>

Evaluați expresia expr, similară cu>, dar nu ecou rezultatul.

Excludeți un segment din șablonul dvs. Alias-o

Ignorați toate jetoanele din cadrul expresiei și imprimați-le așa cum sunt.

Include

Obțineți conținutul submodelului și inserați-l în poziția curentă în șablon [dacă condiția opțională este adevărată].

Hive-ul de date curent este trecut către sub-șablon, îmbogățit cu additional_variables dacă este furnizat (a se vedea aici pentru exemple).

Exclude

Excludeți blocul text în timpul rulării. Folosit pentru încorporarea comentariilor în șabloane. Un alias pentru aceasta este:

Ignora

Afișați blocul text așa cum este, fără nicio interpretare/modificare de către motorul șablonului.

Verifica

Evaluează starea. Dacă este ADEVĂRAT, blocul adevărat este redat; altfel blocul fals este redat.

Forma scurta: Dacă nu aveți nevoie și nu specificați un bloc fals, atunci, pentru confortul dvs., F3 face ca etichetele de deschidere și închidere să fie opționale:

Evaluează din declarație o dată. Verificați dacă expresia din atributul to este ADEVĂRATĂ, redați blocul de text și evaluați instrucțiunea pasului. Repetați iterația până când expresia este FALSĂ .

Repeta

Repetați blocul text de câte ori există elemente în variabila matrice @group sau expresia expr. @key și @value funcționează în același mod ca perechea cheie-valoare din instrucțiunea echivalentă PHP foreach (). Variabilă reprezentată de cheie în creșterea atributului contorului cu 1 la fiecare iterație.

Intrerupator

Echivalent cu structura tabelului jump jump-case PHP.

Folosit pentru a seta dinamic unele variabile în cadrul șablonului.