Newsgroup: it.comp.www.php
Titolo: struttura if?

Ciao, 
chi mi spiega cosa significhi questa riga?: 
$valore = (!funzione()) ? metodo() : $valore
thank you very
m.

Manaus wrote:

è come scrivere..
if (!funzione()) {
 $valore = metodo();
}
letteralmente (sempre che non mi confonda tra le parole)..
assegna a $valore il valore di ritorno di metodo() se il valore di ritorno
di funzione() negato non è false altrimenti lascia $valore invariato..
(condition) ? case true : case false;
-- 
www.iuz-lab.info

  $valore = metodo();
Che io sappia un costrutto come quello sopra elencato significa
(!funzione()) ? metodo() : $valore
se !funzione e' vero eseguo metodo(), altrimenti eseguo $valore...il 
tutto e' equivalente a
if(!funzione())
     metodo();
else
     $valore
Ciiips
Aragorn
-- 
FAQ non ufficiali K7S5A:
http://www.holyword.it/aragorn/ecs_faq.htm

 
era stata richiesta l'intera riga.. e l'intera riga si può riscrivere in..
if (!funzione()) {
 $valore = metodo();
}
else {
 $valore = $valore;
}
o piu' semplicemente..
if (!funzione()) {
 $valore = metodo();
}
-- 
www.iuz-lab.info

"iuz" <us...@host.network> ha scritto nel messaggio 
news:fS2vd.503542$35.21...@news4.tin.it...
era stata richiesta l'intera riga.. e l'intera riga si può riscrivere in..
if (!funzione()) {
 $valore = metodo();
}
else {
 $valore = $valore;
}
-------
questa non ha senso, specie nella parte di else,    l'istruzione:
 $valore = $valore;
per quanto sintatticamente corretta è semanticamente errata: 1) quanto vale, 
$valore? si suppone che sia stato inizializzato a priori; 2) se $valore è 
già stato inizializzato, a quale scopo occorre assegnare il valore a $valore 
se lo ha già?
o piu' semplicemente..
if (!funzione()) {
 $valore = metodo();
}
----------------
questa  è piu logica, personalmente rispecchiando la struttura:
if (!funzione()) {
 $valore = metodo();
}
else {
 $valore = $valore;
}
avrei usato la forma:
$valore = xyz; #inizializzazione di v $valore
if (!funzione()) {
 $valore = metodo();
}
Cooper.
-- 
www.iuz-lab.info
-- 
BlueWare Web Agency
   [http:] 
www.blueware.it
   [msn:] 
coo...@blueware.it
   [icq:] 146781935 

Cooper wrote:

ed io che avevo scritto?
[mi quoto]
o piu' semplicemente..
if (!funzione()) {
 $valore = metodo();
}
[/mi quoto]
non inizializzo $valore perchè probabilmente sara' già stato fatto in
un'altra parte dello script (non avendolo visto almeno lo spero)..
-- 
www.iuz-lab.info

"iuz" <us...@host.network> ha scritto nel messaggio 
news:d8fvd.287181$b5.14...@news3.tin.it...
ed io che avevo scritto?
[mi quoto]
o piu' semplicemente..
if (!funzione()) {
$valore = metodo();
}
[/mi quoto]
---
Sono d'accordo con quanto hai scritto, puntualizzavo soltanto, che non 
condivido molto il "più semplicemente" in quanto cosi facendo tenderesti a 
dare per corretta l'altra forma (quando invece, semanticamente, non lo è).
Per il resto è tutto ok :)
non inizializzo $valore perchè probabilmente sara' già stato fatto in
un'altra parte dello script (non avendolo visto almeno lo spero)..
---
lo spero anche io .)
Cooper.


 fatto non succede nulla

 sostituiti e mescolati con caratteri elfici.
Le rune vanno bene lo stesso? 
Premettendo che $valore era naturalmente inizializzato a monte, chi ha
scritto il codice lavora per una azienda quotata al nasdaq (MACR).
Non capisco però perché condanni, visto che sintatticamente è giusto.
m.

 m.
era ironico, ma voleva dire una cosa seria, io personalmente trovo noioso
leggere codice con operatori ternari e via dicendo, infatti se vai a vedere
certe policies di come scrivere codice per la comunità una cosa che noterai
è proprio quella di evitare di scrivere cose del genere, poiché ti fanno
guadagnare tre secondi mentre scrivi la funzione, e perdere molto tempo
quando le rileggi dopo un anno, o tantissimo tempo se non le hai scritte
tu.
niente di male cmq :)


> niente di male cmq :)
Ah ok :) scusasse il tono sembrava scorbutico, ma non era :)
by

