jurchiks Posted December 25, 2014 Report Share Posted December 25, 2014 Cons:Nolāpītie masīvi Koa? Quote Link to comment Share on other sites More sharing options...
F3llony Posted December 25, 2014 Author Report Share Posted December 25, 2014 Koa? Tu gribi teikt, ka multidimensionālu masīvu sintakse PHP ir adekvāta? $config = Config::wat(); $config['key']['wat']['batman']; Paglābj vienīgi varbūt dot syntax, Config::get('dot.syntax.wat.batman'); Quote Link to comment Share on other sites More sharing options...
briedis Posted December 25, 2014 Report Share Posted December 25, 2014 Associatīvie masīvi sux, ļaunuma sakne. Klašu instances rulez vienmēr, IDE power! Quote Link to comment Share on other sites More sharing options...
F3llony Posted December 25, 2014 Author Report Share Posted December 25, 2014 Associatīvie masīvi sux, ļaunuma sakne. Klašu instances rulez vienmēr, IDE power! Exactamente. Par ko pamatā ir visa šī diskusija. Quote Link to comment Share on other sites More sharing options...
jurchiks Posted December 25, 2014 Report Share Posted December 25, 2014 (edited) Ko tev tādu konfigos vajag glabāt, kas ir multidimensionāls? >Associatīvie masīvi sux, ļaunuma sakne. Nepiekrītu. Varbūt šajā konkrētajā piemērā nav labi, bet vispār ļoti ērta štelle. Edited December 25, 2014 by jurchiks Quote Link to comment Share on other sites More sharing options...
Blitz Posted December 26, 2014 Report Share Posted December 26, 2014 Janem vērā ka konfigurācijas lietotāji pārsvarā ir admini, normālā gadījumā. Klašu konstantes, metodes varētu nebut tas lasamakais gabals adminam, un viņš pārsvarā lieto melno konsoli nevis ide. Assoc masīvi manuprāt labākais veids ka glabāt konfigu. Ar pieraksta veidu var variet iegūstot lasamibu, inheritance ar array_merge utt Quote Link to comment Share on other sites More sharing options...
F3llony Posted December 29, 2014 Author Report Share Posted December 29, 2014 Ko tev tādu konfigos vajag glabāt, kas ir multidimensionāls? >Associatīvie masīvi sux, ļaunuma sakne. Nepiekrītu. Varbūt šajā konkrētajā piemērā nav labi, bet vispār ļoti ērta štelle. Sekcija=>konfigs=>vērtība[?masīvs/saraksts] Janem vērā ka konfigurācijas lietotāji pārsvarā ir admini, normālā gadījumā. Klašu konstantes, metodes varētu nebut tas lasamakais gabals adminam, un viņš pārsvarā lieto melno konsoli nevis ide. Assoc masīvi manuprāt labākais veids ka glabāt konfigu. Ar pieraksta veidu var variet iegūstot lasamibu, inheritance ar array_merge utt Offtopic protams, bet kādā normālā gadījumā gar PHP aplikāciju konfigiem gramstās admini?! Lūdzu, pastāsti man, kurā paradīzes ielejā tā notiek. Konfigs ir tāds pats klasisks write few, use many gadījums kā ārējās bibliotēkas. Konfigs tiek referencēts bieži tāpēc tam būtu jābūt maksimāli ērtam, tieši tā pat, kā jebkurai tāda paša tipa referencei. Asociatīvi masīvi šajā gadījumā ir problemātiski jo tiem nav definējama shēma un nav tik ļoti vēlamais autocomplete. Quote Link to comment Share on other sites More sharing options...
jurchiks Posted December 29, 2014 Report Share Posted December 29, 2014 Kā tu iztēlojies multi-dimensionālu konfigu ar auto-complete? Vai to vispār kaut kā ir iespējams īstenot? Ja nē, tad tādu kritēriju kā auto-complete vispār jāatmet, un tad nu grozies kā gribi - PHP masīvi ir vislabākais/ērtākais/vienkāršākais variants. JSON/YAML/INI visi ir tikai abstrakcijas, kad tos nolasa, rezultātā iegūst vai nu to pašu PHP masīvu, vai ko smagāku. Manuprāt, nav jēgas lieki sarežģīt dzīvi, ar PHP masīvu viss ir elementāri. >tiem nav definējama shēma Kāda shēma? Quote Link to comment Share on other sites More sharing options...
Blitz Posted December 30, 2014 Report Share Posted December 30, 2014 kādā normālā gadījumā gar PHP aplikāciju konfigiem gramstās admini Tādā normālā gadījumā kur sistēmai var būt n-vides, un developerim ir pieeja tikai savai dev videi. Uzstādīšanu un konfigurēšanu citās vidēs veic admins, izmantojot instrukciju un konfigurācijas failus. Ja to nevar izdarīt tad ir vai nu sūdīga konfigurācija, sūdīga dokumentācija vai sūdīgs admins. Quote Link to comment Share on other sites More sharing options...
F3llony Posted December 30, 2014 Author Report Share Posted December 30, 2014 Tādā normālā gadījumā kur sistēmai var būt n-vides, un developerim ir pieeja tikai savai dev videi. Uzstādīšanu un konfigurēšanu citās vidēs veic admins, izmantojot instrukciju un konfigurācijas failus. Ja to nevar izdarīt tad ir vai nu sūdīga konfigurācija, sūdīga dokumentācija vai sūdīgs admins. :D es saprotu, ka tu esi trāpijis uz kaut kādu energo vai telekoma iepirkumu, bet šitā ķēmošanās NAV normāls gadījums. Tas nekas, ka tā dara. Un kodu pa epastu sūtīt arī nav normāls gadījums. Quote Link to comment Share on other sites More sharing options...
Blitz Posted December 30, 2014 Report Share Posted December 30, 2014 (facepalm) Quote Link to comment Share on other sites More sharing options...
F3llony Posted December 30, 2014 Author Report Share Posted December 30, 2014 Faceplam some more. Puppet does not care about your formatz. Quote Link to comment Share on other sites More sharing options...
Kavacky Posted December 30, 2014 Report Share Posted December 30, 2014 Konfigs ir tāds pats klasisks write few, use many gadījums kā ārējās bibliotēkas. Konfigs tiek referencēts bieži tāpēc tam būtu jābūt maksimāli ērtam, tieši tā pat, kā jebkurai tāda paša tipa referencei.Man kaut kā vienmēr ir licies, ka, jo mazāk vietās parādās atsauce uz konfigu, kā arī, jo konfiga vispār mazāk, jo labāk. Un tad nekādas n dimensiju bedres nevajag. Ar to es nedomāju hārdkodēt vai ko tādu, bet neparedzēt lieki konfigurēt to, bez kā var iztikt. Quote Link to comment Share on other sites More sharing options...
F3llony Posted December 30, 2014 Author Report Share Posted December 30, 2014 Man kaut kā vienmēr ir licies, ka, jo mazāk vietās parādās atsauce uz konfigu, kā arī, jo konfiga vispār mazāk, jo labāk. Un tad nekādas n dimensiju bedres nevajag. Ar to es nedomāju hārdkodēt vai ko tādu, bet neparedzēt lieki konfigurēt to, bez kā var iztikt. Pilnīgi piekrītu, un daudzos gadījumos to tiešām tā var arī realizēt, bet diemžēl, ne tuvu ne visos. Quote Link to comment Share on other sites More sharing options...
Roze Posted December 31, 2014 Report Share Posted December 31, 2014 Droši vien daudz aiztaupītu, ja sākotnēji būtu skaidrāks vai "konfigam" jābūt "human readable" (tad, piemēram, Blitz komentārs par to, ka kaut kāds administrators, kas ņebumbum no php, INI tipa konfigā justos par kapeiku labāk, ir OK). Ja to lasa/lieto php koderis vai kods, tad sāvādāk .. INI [config] a=1 b=2 Pros: ātrāks par JSON un YAML Cons: tikai 2 līmeņi Skaldot matus http://php.net/parse_ini_fileman sanāk 3 t.i. pašā ini sanāk pseido masīvi [third_section] phpversion[aa] = "5.0" phpversion[bb] = "5.1" phpversion[xx] = "5.2" phpversion[] = "5.3" .. galā protams tas anyway ir arrays. Offtopic - kā administratoram (no "cilvēkiem lasāmajām") vislabāk patīk nginx tipa konfigurācija: section { var1 value1; subsection { statement; var2 value2; } } section2 { ... } Var, protams, arī šeit piesieties par to ka priekšā un pakaļā vajag {}, bet nu .. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.