Unofficial WebSite X5
Programmazione PHP => Discussioni Generali => Topic aperto da: lemonsong - 08 Ottobre, 2011, 14:30:14
-
Toc, toc... è permesso? :)
Postare da questo lato (server) per me è come tentare di scrivere una lettera in aramaico... comunque ci provo eh? :)
Visto che tigrone, in altro topic, ha accennato all'istruzione(?) switch, vorrei avere un parere su un esempio, trovato in giro per la Rete.
Supponiamo il caso di avere una serie di pagine tutte impostate (layout) allo stesso modo con dei piccoli contenuti che variano e vogliamo, per praticità(?), usare una sola pagina (completa).
Questo è l'esempio (ho usato WS solo per motivi pratici):
http://lemonsong.altervista.org/test_switch-case/ (http://lemonsong.altervista.org/test_switch-case/)
Qui lo zip:
http://lemonsong.altervista.org/test_switch-case/test_switch-case.zip (http://lemonsong.altervista.org/test_switch-case/test_switch-case.zip)
Premesso che sicuramente ci saranno altri metodi più efficaci, le domande sono:
- quanti e quali errori ci sono nel codice php?
- è consigliato usare switch e case per ottenere ciò?
- quanto è obsoleto questo metodo?
Bene, è stato come aspettare nella sala d'attesa del dentista ;D
-
Toc, toc... è permesso? :)
Postare da questo lato (server) per me è come tentare di scrivere una lettera in aramaico... comunque ci provo eh? :)
Visto che tigrone, in altro topic, ha accennato all'istruzione(?) switch, vorrei avere un parere su un esempio, trovato in giro per la Rete.
Supponiamo il caso di avere una serie di pagine tutte impostate (layout) allo stesso modo con dei piccoli contenuti che variano e vogliamo, per praticità(?), usare una sola pagina (completa).
Questo è l'esempio (ho usato WS solo per motivi pratici):
http://lemonsong.altervista.org/test_switch-case/ (http://lemonsong.altervista.org/test_switch-case/)
Qui lo zip:
http://lemonsong.altervista.org/test_switch-case/test_switch-case.zip (http://lemonsong.altervista.org/test_switch-case/test_switch-case.zip)
Premesso che sicuramente ci saranno altri metodi più efficaci, le domande sono:
- quanti e quali errori ci sono nel codice php?
- è consigliato usare switch e case per ottenere ciò?
- quanto è obsoleto questo metodo?
Bene, è stato come aspettare nella sala d'attesa del dentista ;D
Ti rispondo io anche se non è strettamente il mio campo. Se consideriamo l'esercizio come tale, ovvero a titolo di esercizio, è quasi corretto ... c'e' un errore in riga 102 del file index.php
Only registered users can see contents. Please click here to Register or Login.
La funzione isset(), il cui prototipo è bool isset ( $var [, $... ] ), restituisce un booleano, ovvero true o false che nel tuo caso viene negato dall'operatore ! ma viene confrontato con la stringa "x" e non ne capisco il motivo. Qualsiasi situazione contemplata dal tuo IF avrà come risultato FALSE e quindi la clausola THEN non verrebbe mai valutata.
A parte questa cosa, da un punto di vista pratico, nel caso specifico da te proposto, direi che si tratta di un assurdo contorsionismo mentale. Hai realizzato tre pagine fittizie per richiamarle tramite un include .... è solo un esercizio e quindi ha valore solo come tale. ;)
-
c'e' un errore in riga 102 del file index.php
Only registered users can see contents. Please click here to Register or Login.
OK, quindi, come includere la pagina di default insetti.html ?
Questo potrebbe andare?
Only registered users can see contents. Please click here to Register or Login.
Il resto che hai scritto, lo capirò a Natale... forse :)
Grazie.
-
Provo a risponderti io, poi se ci sono sciocchezze, correggeranno:
Basta questo per visualizzare la pagina insetti:
Only registered users can see contents. Please click here to Register or Login.
che tradotto significa: se la variabile p non ha nessun valore, esegui il codice, cioè includi la pagina insetti.html.
-
che tradotto significa: se la variabile p non ha nessun valore, esegui il codice, cioè includi la pagina insetti.html.
Grazie stesil, ora vedo un lumicino in lontananza ma temo sia lo standby del mio neurone :)
-
Provo a risponderti io, poi se ci sono sciocchezze, correggeranno:
Basta questo per visualizzare la pagina insetti:
Only registered users can see contents. Please click here to Register or Login.
che tradotto significa: se la variabile p non ha nessun valore, esegui il codice, cioè includi la pagina insetti.html.
Che è diverso dal dire che la variabile p ha un valore nullo o qualsivoglia. Semplicemente settata o non settata e se lo è può assumere qualsiasi valore, anche nullo, eventualmente, mentre con la funzione isset() si esegue una verifica sull'esistenza o meno di una o più variabili.
Quando invece si parla di prototipo di una funzione, si intende una descrizione formale della funzione con l'elenco ed il tipo di argomenti e l'eventuale tipo del dato in uscita.
Ad esempio:
bool isset ( $var [, $... ] )
è il prototipo della funzione isset() che prende un certo numero di argomenti che sono variabili (precedute dal simbolo $ e separate dalla virgola), una o più ... le parentesi quadre indicano gli argomenti opzionali .... e restituisce un valore booleano, ovvero TRUE o FALSE (vero o falso). Il punto esclamativo ! è definito come operatore not, ovvero negazione di ciò a cui è riferito: !FALSE = TRUE
Pensavo che, avendolo scritto, il significato fosse chiaro già da subito.
-
Che è diverso dal dire che la variabile p ha un valore nullo o qualsivoglia.
[...]
Pensavo che, avendolo scritto, il significato fosse chiaro già da subito.
Ora dovrebbe essermi più chiaro, grazie :)
Riassumendo, quel codice trovato non ricordo dove, è una ciofeca... bene, lo sospettavo.
-
Riassumendo, quel codice trovato non ricordo dove, è una ciofeca... bene, lo sospettavo.
secondo me non è una ciofeca, ma come dice Tigrone ci sono diversi modi di scrivere del codice per avere lo stesso risultato.
-
Riassumendo, quel codice trovato non ricordo dove, è una ciofeca... bene, lo sospettavo.
secondo me non è una ciofeca, ma come dice Tigrone ci sono diversi modi di scrivere del codice per avere lo stesso risultato.
Certo, ci sono infiniti modi per scrivere un codice, ma un codice corretto non contiene istruzioni che non verranno mai eseguite in nessun caso. Si tratta di un errore di progettazione. Oltretutto i compilatori più intelligenti, non è il caso dell'interprete php (il linguaggio php non è compilato ma interpretato), eliminano direttamente il codice sui rami morti nella cosiddetta Control Flow Analisys.