Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #21024
| From | alex <1j9448a02@lnx159sneakemail.com.invalid> |
|---|---|
| Newsgroups | it.comp.www.php |
| Subject | Re: gestione degli array lacunosa |
| Date | 2016-07-05 02:20 +0200 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <nleugi$de0$1@gioia.aioe.org> (permalink) |
| References | (5 earlier) <525ccf96-beff-415a-90fe-88df9c937a4e@googlegroups.com> <nldv83$pmh$1@gioia.aioe.org> <bcb37bb4-03bb-4e6a-8486-73d7d328bb99@googlegroups.com> <nle4g3$12v7$1@gioia.aioe.org> <d1a9a77b-49d8-4eb4-92bc-8eadb241cbb2@googlegroups.com> |
Il 04/07/2016 19:52, fmassei@gmail.com ha scritto:
> On Monday, July 4, 2016 at 12:56:38 PM UTC-4, alex wrote:
>> Il 04/07/2016 17:47, fmassei@gmail.com ha scritto:
>>> Non.è.così.che.funzionano.gli.array.in.PHP.
>>> Per fare quello che vuoi te l'array_map dovrebbe entrare in try-catch ogni
>>> ciclo, che sarebbe un'enorme idiozia.
>>
>> ...il motivo?
>>
>
> ... è così in ogni linguaggio ...
> Per entrare in un try/catch devi creare un nuovo contesto, cosa che, non fosse
> già pesante abbastanza da sola, impedisce in un ciclo for di ottimizzare con
> clobbering o vettorizzazioni (e/o pipelines se gira compilato, o in JIT).
> Non è roba di lana caprina, parliamo di ordini di grandezza di differenza
> nelle performances.
>
Cmq sono strutture che quando servono (molto spesso) vanno implementate,
e sempre a carico dello sviluppatore (come se non lavorasse già abbastanza).
Con i moderni computer poi tutto questo calo di prestazioni diventa
sempre più irrisorio.
>> Non ci sono appunto, quindi servirebbe conoscere la key (nome del campo
>> se si tratta di un DB) per identificare senza troppa fatica qual'è il
>> valore non conforme.
>>
>
> Continuo a non capire. La tua parte di codice PHP che legge decide come
> deserializzare, quindi semmai il problema sarebbe lì, e non è certo
> instrinseco.
array_map(
function($str){
if (!is_string($str)) {
throw new Exception($str.' non è una stringa');
}
// ...
},
spyc::yamlLoad('data.yml')
);
PHP Fatal error: Uncaught Exception: 2 non è una stringa
Intanto andiamo a vedere cosa c'è nel file data.yml:
primo: uno
secondo: 2
terzo: tre
Il problema infatti risiede nel secondo elemento.
Ma se il file yaml, invece di tre entries, ne contenesse centinaia, per
trovare il *cattivo* (senza che venga indicata la key) sarebbe molto più
difficile.
Capito il concetto?
Back to it.comp.www.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-04 10:18 +0200
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-04 17:26 +0200
Re: gestione degli array lacunosa fmassei@gmail.com - 2016-07-04 08:47 -0700
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-04 18:56 +0200
Re: gestione degli array lacunosa fmassei@gmail.com - 2016-07-04 10:52 -0700
Re: gestione degli array lacunosa fmassei@gmail.com - 2016-07-04 20:08 -0700
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-05 11:20 +0200
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-05 11:57 +0200
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-05 02:20 +0200
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-04 12:15 +0200
Re: gestione degli array lacunosa fmassei@gmail.com - 2016-07-04 05:22 -0700
Re: gestione degli array lacunosa alex <1j9448a02@lnx159sneakemail.com.invalid> - 2016-07-04 16:26 +0200
Re: gestione degli array lacunosa fmassei@gmail.com - 2016-07-04 07:50 -0700
Re: gestione degli array lacunosa Alessandro Pellizzari <shuriken@amiran.it> - 2016-07-04 10:34 +0100
csiph-web