Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > it.comp.www.php > #21021

Re: gestione degli array lacunosa

From alex <1j9448a02@lnx159sneakemail.com.invalid>
Newsgroups it.comp.www.php
Subject Re: gestione degli array lacunosa
Date 2016-07-04 16:26 +0200
Organization Aioe.org NNTP Server
Message-ID <nldrm6$ibk$1@gioia.aioe.org> (permalink)
References <nld63r$1b3t$1@gioia.aioe.org> <dtuotnF19b2U1@mid.individual.net> <nldcvu$1mja$1@gioia.aioe.org> <d94f5522-c189-43c7-b32b-653e8738a0b4@googlegroups.com>

Show all headers | View raw


Il 04/07/2016 14:22, fmassei@gmail.com ha scritto:
>> Visto la direzione che sta prendendo php, è il caso di farle complete le
>> cose.
>>
>
> Non ci sono informazioni sul tipo nell'header degli array, i check di tipo
> andrebbero fatti a runtime su ogni elemento. A meno di non cambiare tutta
> l'implementazione degli array.
>

Qualche miglioramento penso che si potrebbe introdurre.

>>>> function test(Abc $value) {}
>>>>
>>>> $arr = array(new Abc, 'number' => 2, new Abc);
>>>> array_map("test", $arr);
>>>>
>>>> Fatal error:  Uncaught TypeError: Argument 1 passed to test() must be an
>>>> instance of Abc, integer given
>>>> Almeno la key dell'elemento non valido ('number') potrebbe essere
>>>> indicata...
>
> Boh, no, perché? In nessun messaggio d'errore o eccezione c'è nulla di
> simile, non vedo perché arrap_map dovrebbe essere diversa.
>

array_map è solo per citare una funzione tra le altre simili.

>>> Se sai che la tua struttura dati è dinamica, non forzare il tipo.
>>> Se non sai se è dinamica, sviluppa in modo difensivo (con un foreach e
>>> degli if, per esempio).
>>>
>>
>> Proprio questo vorrei evitare.
>> Sarebbe il caso che php inizi a fare dei controlli in modo intrinseco.
>> Ne conseguirebbe un codice più pulito; è il caso di iniziare a pensarci!!!
>>
>
> PHP fa i controntrolli specificati negli RFC, se li conosci bene, sennò
> beh.. :)

Come già detto all'inizio, qualche revisione di tanto in tanto...

>
>>> In PHP7 puoi usare try...catch anche con molti tipi di errore (tra cui
>>> questo, visto che te lo dice anche lui: Uncaught TypeError)
>>>
>>
>> E una volta che ho catturato l'errore (che peraltro non è il mio
>> obiettivo) che me ne faccio?
>>
>
> Lo rilanci, lo logghi o lo ignori. Che ci fai con le eccezioni di solito?
>

Ripeto la domanda.
Qual'è l'obiettivo?
L'obiettivo è sapere semplicemente qual'è l'elemento maligno dell'array 
che ho passato alla funzione array_map (rileggere post iniziale).
Php la offre questa possibilità?
Mi pare di no.
Quindi non mi resta che implementare a mano i soliti controlli, usare 
eventuali var_dump, ecc.
Pazienza, vedremo se ci saranno novità in future versioni.

Back to it.comp.www.php | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


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