konzolos alkalmazás

konzolos alkalmazás

Amellett, hogy a gazdag lehetőségeket kínál a webes alkalmazások, Yii is teljes mértékben támogatja a konzolos alkalmazások általánosan használt, hogy egy háttér és a teljesítmény célok, amelyek támogatják az oldalon.

A szerkezet a konzolos alkalmazások nagyon hasonlít a szerkezet egy webes alkalmazás. Ez áll egy vagy több osztály [[Yii \ konzol \ Controller]], mely gyakran nevezik a parancsot a konzolban környezetben. Minden vezérlő egy vagy több műveletet, valamint a web vezérlők.

Mindkét projekt sablon már van egy konzol alkalmazás. Kezdheti meg hívja a script Yii található, amely a fő könyvtárban az alkalmazás. Ön kap egy listát a rendelkezésre álló parancsokat, ha lehívja paraméterek nélkül:

konzolos alkalmazás

Mint látható a képen, Yii már megadta az alapértelmezett meghatározott parancsok:

használata

Meg lehet kezdeni a működését a konzol kontroller segítségével a következő parancsot:

A fenti példában, Arra utal, hogy az intézkedés a vezérlő. A paraméterek helyettesíthetőek az osztály tulajdonságait, és érvek a cselekvési módszer.

Például az [[Yii \ konzol \ vezérlők \ MigrateController :: actionUp () | MigrateController :: actionUp ()]] a [[Yii \ konzol \ vezérlők \ MigrateController :: $ migrationTable | MigrateController :: $ migrationTable]] telepítési migrációk és egy határ 5 migráció oka lehet a következő:

Megjegyzés: Ha a konzol *. ne felejtsük el, hogy tegye idézőjelbe „*”, hogy elkerüljék annak értelmezésére és cserélje ki az összes fájl neve ebben a könyvtárban.

Entry script

Input script konzolos alkalmazás - például az index.php fájlt. használják a webes alkalmazás. Input script konzol, szokták Yii és található a fő könyvtárban a kérelmet. Olyan kódot tartalmaz, a következőhöz hasonló:

Ez a szkript jön létre részeként az alkalmazás; lehet szerkeszteni, ha szüksége van rá. YII_DEBUG lehet állítani, hogy hamis, ha nem szeretné, hogy a hibakeresés kimenetét hiba esetén, és / vagy ha azt szeretné, hogy javítsa a teljesítményét. Mindkét sablonok, az alkalmazás belépési script hibakeresés alapértelmezés szerint engedélyezett alkalmazások, hogy barátságosabb környezetet a fejlesztő.

Mint látható a kódot eredményezett említettük, a konzolos alkalmazás saját konfigurációs fájl, melynek neve console.php. Ebben a fájlban van, hogy beállítsa a különböző komponensei a kérelmet, és a tulajdonságait a konzol alkalmazás.

Ha a web és a konzol alkalmazás van egy csomó általános konfigurációs beállításokat, akkor válassza ki az általános rész egy külön fájlban, és tartalmazza azt a két konfigurációs fájl (web és a konzol). Láthatjuk egy példa a „fejlett” projekt sablon.

Tipp: Néha szükség lehet futtatni a konzol parancsot egy konfigurációs eltér a bejegyzésben meghatározott forgatókönyvet. Például, akkor használja a Yii vándorolnak paranccsal frissítse a teszt adatbázist, amely be van állítva minden vizsgálatsorozat. Ha módosítani szeretné a konfigurációs fájl, egyszerűen adja meg a konfigurációs fájl segítségével lehetőség appconfig a csapat induláskor:

Automatikus kiegészítés konzolparancsok

Befejezés érv parancsok egy hasznos funkció, ha dolgozik a parancssorban. Verziótól kezdődően 2.0.11, ./yii csapat támogatja automatikus kiegészítést Bash és zsh.

Automatikus kiegészítés Bash

Győződjön meg arról, hogy az automatikus teljes szerszámok Bash telepítve. A legtöbb Linux disztribúció által szállított alapértelmezett.

Mentse el a forgatókönyvet, hogy autocomplete könyvtár /etc/bash_completion.d/:

Ideiglenes használatra, akkor mentse a fájlt egy tetszőleges könyvtárba, és csatlakoztassa idején az ülés, ami a forrás Yii csapat.

Ha a szkript lett telepítve világszerte, akkor újra kell indítani a terminál vagy végrehajtani a parancsot forrás

/.bashrc, hogy az automatikus kiegészítést.

Lásd az utasításokat a lap befejezése Bash megismerni más módon kapcsolatba automatikus kiegészítést szkriptek a környezetben.

Automatikus kiegészítést zsh

Mentsd meg a script automatikus kiegészítést könyvtár automatikus kiegészítésre script. Például,

Add ezt a könyvtárat, a környezettől függően változó $ fpath. hozzátéve, hogy a végén a pl

/.zshrc a következő sort:

Ellenőrizze, hogy a program fut compinit. Ha nem - add

/.zshrc a következő sorokat:

Ezután indítsa újra a terminált, vagy parancssorból

Hozza létre saját parancsokat

A konzol kontroller és fellépés

A konzol parancs osztály van definiálva, mint a vezérlő kiterjed [[Yii \ konzol \ Controller]]. A vezérlő osztályban, akkor határozzon meg egy vagy több műveletet, amelyek megfelelnek az al-vezérlő parancsokat. Minden intézkedés kódot írsz, hogy végre a megfelelő parancsot az al-feladatokat.

Amikor futtatja a parancsot, meg kell adnia az elérési utat a cselekvésre. Például vándorolnak / létrehozására útvonal részparancsok, amely megfelel a módszer [[Yii \ konzol \ vezérlők \ MigrateController :: actionCreate () | MigrateController :: actionCreate ()]]. Ha az útvonal javasolt a hívás parancsot, nem jelzi a művelet azonosító lesz okozta az alapértelmezett művelet (valamint a webes alkalmazás).

Ahhoz, hogy felülírja az [[Yii \ konzol \ Controller :: options ()]] módszer, akkor adja meg a beállításokat, hogy rendelkezésre állnak a konzol parancs (vezérlő / actionID). A módszer listáját adja vissza public class attribútum. Amikor futtatja a parancsot, akkor adja meg az értéket a lehetőségek felhasználásával --OptionName = Beállításérték szintaxis. Ez a rendszer összekapcsolja az attribútum Beállításérték Beállításnév vezérlő osztályban.

Ha az alapértelmezett beállítás - ez egy tömb, ha ezt az opciót, akkor a parancs, az érték kerül átalakításra tömb bontással egy részét vesszővel elválasztott karakterláncot.

Amellett, hogy a lehetőségek, a csapat kaphat érveket. Érvek paraméterként adja át a módszer megfelelő lépcsők kért részparancsot. Az első paraméter megfelel az első érv, a második, illetve a második, és így tovább. Ha az adott érveket hívás esetén a parancsot nem lesz elég a paramétereket kap az alap, ha azok meg vannak határozva. Ha az alapértelmezett értékek nincsenek meghatározva, és nem adta át, a csapat teljes hibával.

Segítségével adja meg milyen tömb. azt jelzi, hogy az érv kell kezelni, mint egy tömb. Egy tömb keletkezik elválasztásával a bemeneti karakterlánc vesszővel.

Más nevek lehetőségek

2.0.8-es verziótól kezdődően az osztályban konzol parancsot elérhető módszer [[Yii \ konzol \ Controller :: optionAliases ()]], lehetővé teszi, hogy adjunk alias lehetőségeket.

Ahhoz, hogy olyan álnevet, kapcsolja ki a módszer [[Yii \ konzol \ Controller :: optionAliases ()]] a vezérlő:

Most, a következő szintaxis lehet használni ezt a parancsot:

A következő példa bemutatja, hogyan kell leírni érvek:

A visszatérési kód

Fejlesztése során egy konzolos kérelmet elfogadják, hogy használja a visszatérési kódot. Elfogadott kódja 0 azt jelenti, hogy a parancs sikeresen végrehajtásra. Ha a parancs visszaadott értéke nullánál nagyobb, akkor hibát jelez. Számos, amit jelez, ha hibát is fel lehetne használni, hogy további információkat talál a hiba. Például az 1 jelezheti ismeretlen hiba, és minden kód fent tartható fenn konkrét hibák: beviteli hibák, sérült fájlok, és még valami.

Ahhoz, hogy a konzol parancsot visszatérési kódot, egyszerűen csak vissza egy egész a kontroller akció módszer:

Vannak előre definiált állandók, amelyek segítségével:

  • [[Yii \ konzol \ Controller :: EXIT_CODE_NORMAL | Controller :: EXIT_CODE_NORMAL]] és a 0 érték;
  • [[Yii \ konzol \ Controller :: EXIT_CODE_ERROR | Controller :: EXIT_CODE_ERROR]] értékben 1.

Egy jó gyakorlat, hogy meghatározza jelentéssel bírnak az adatkezelő állandó használata esetén több típusú hibák.

Formázás és szín

Yii konzol támogatja formázását kimenet, amely automatikusan lebomlik nincs formázva, ha nem támogatja a terminál, ahol a parancs lefut.

A következtetés egyszerű formázott szálakat. Itt van, hogyan lehet vinni félkövér szöveg:

Ha meg kell gyűjteni egy sor dinamikusan ötvözi a különböző stílusokat, a legjobb, ha a [[Yii \ segítők \ konzol :: ansiFormat () | ansiFormat ()]]:

Vegyük a link a cikket is, akkor könnyen találják meg azt;)

Válassza ki, mit a leggyakrabban használt:

Kapcsolódó cikkek