Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #21352
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Newsgroups | it.comp.www.php |
| Subject | Re: cookie in ambiente CLI |
| Date | 2017-01-11 15:27 +0000 |
| Message-ID | <edn173Fc9ulU1@mid.individual.net> (permalink) |
| References | <o50dqu$1oro$1@gioia.aioe.org> <edi4m3F66edU1@mid.individual.net> <o551tg$u3l$1@gioia.aioe.org> |
On 11/01/2017 10:37, alex wrote:
> Il 09/01/2017 19:56, Alessandro Pellizzari ha scritto:
>> Siccome PHP inizializza le superglobal quando parte, non c'è modo di
>> metterci qualcosa (se non modificandole direttamente e manualmente) in
>> ambiente CLI: quando lo script viene eseguito sono già state
>> inizializzate.
>
> if (!isset($_COOKIE['abc'])) {
> //manomissione...
> $_COOKIE['abc'] = random();
> }
>
> però manomettere una variabile globale... è una pratica consigliabile?
No, non in codice normale come questo.
Ma se stai scrivendo un test che testi il caso specifico, può essere
tollerato. In pratica costruisci l'ambiente prima del test.
Ma proprio per questo, di solito, si wrappa l'accesso all'ambiente in
classi dedicate. A quel punto queste "porcherie" le farai solo nei test
delle classi wrapper, mentre in tutto il resto del codice semplicemente
usi la classe "Web" o quella "CLI", o fai un mock che presenti valori
deterministici ai fini del test.
Bye.
Back to it.comp.www.php | Previous | Next — Previous in thread | Find similar | Unroll thread
cookie in ambiente CLI alex <1j9448a02@lnx159sneakemail.com.invalid> - 2017-01-09 17:30 +0100
Re: cookie in ambiente CLI fmassei@gmail.com - 2017-01-09 08:54 -0800
Re: cookie in ambiente CLI Alessandro Pellizzari <shuriken@amiran.it> - 2017-01-09 18:56 +0000
Re: cookie in ambiente CLI alex <1j9448a02@lnx159sneakemail.com.invalid> - 2017-01-11 11:37 +0100
Re: cookie in ambiente CLI Alessandro Pellizzari <shuriken@amiran.it> - 2017-01-11 15:27 +0000
csiph-web