Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    comando php che non riesco ad interpretare

    Codice PHP:
    !$variabile && $variabile 'valore'
    qualcuno mi sa spiegare nel dettaglio cosa fa?

    da quello che ho capito il concetto dovrebeb essere:

    se "$variabile" non esiste la setto a "valore"...

    se però poi ci metto un
    Codice PHP:
    header('Location: '.$self); 
    mi da errore "impossibiare cambiare header information"...

    perché?

  2. #2
    Utente di HTML.it L'avatar di Nazza97
    Registrato dal
    Apr 2012
    Messaggi
    200
    Per l'header cannot ...

    ob_start() [Inizio pagina]
    ob_flush() [Fine pagina]

    (Credo)
    Nazza

  3. #3
    Utente di HTML.it L'avatar di vnt54
    Registrato dal
    Mar 2009
    Messaggi
    500
    !$variabile && $variabile = 'valore';
    La & commerciale significa un AND logico di confronto,e comunque il codice non è completo e non stà a significare che setta $variabile='valore'
    Sono stato nella terra della paura e dei vampiri...in transilvania?NO!..in Banca!

  4. #4

    Re: comando php che non riesco ad interpretare

    Originariamente inviato da irdg
    Codice PHP:
    !$variabile && $variabile 'valore'
    qualcuno mi sa spiegare nel dettaglio cosa fa?
    Così come è scritta genera solo un errore.
    La versione corretta sarebbe:
    Codice PHP:
    !$variabile && $variabile == 'valore'
    Suppongo ci sia anche un altro errore, ma sarebbe da vedere il codice completo!
    Teoricamente, quando in un controllo dichiari:
    Codice PHP:
    !$variabile 
    Significa che vai a controllare che il valore della variabile sia FALSE.
    Nel secondo controllo, invece vai a verificare che la stessa variabile sia dichiarata e uguale a valore.
    Dove sta l'errore eclatante (secondo me)?
    Il singolo = indica assegnazione, mentre per un controllo di uguaglianza si deve usare il doppio uguale (==).
    Ad ogni modo, la sintassi con il doppio ampersand ( && ), indica che affinché il controllo risulti valido, entrambe le dichiarazioni devono essere vere!
    Per questo secondo me c'è un secondo errore:
    LA stessa variabile non potra mai essere allo stesso tempo FALSE e contenente un valored di tipo stringa!
    Induibbiamente, il tuo codice non è completo, quindi siamo tutti nel tempio della supposizione!

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  5. #5
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Hai ragione col concetto, è praticamente

    Codice PHP:
    if (!$variabile$variabile 'valore'
    Funziona perché usa un operatore shortcut, ciò vuol dire se la prima condizione é falsa la seconda non viene valutata perché il risultato finale sarebbe sempre falso comunque.

    In quel caso prende la prima condizione e verifica se $variabile non è settata. Se viene valutata come vera c'è bisogno di valutare anche la seconda condizione che però sempre valuterà a vero perché è un'assegnazione (quindi setta il valore). Se la prima condizione è falsa invece l'intera condizione non può mai risultare in vera quindi non c'è bisogno di valutare la seconda.


    Il secondo problema però non c'entra niente col primo. Ottieni quell'errore perché stai provando di inviare un header benché hai già inviato l'output a video.

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  6. #6
    no scusate...

    l'istruzione
    Codice PHP:
    !$variabile && $variabile 'valore'
    è perfettamente valida sotto tutti i punti di vista...

    significa:
    assegna la stringa 'valore' alla variabile $variabile se e solo se $variabile è false oppure non esiste

    rimane comunque probabilmente vero il fatto che
    Originariamente inviato da neroux
    Il secondo problema però non c'entra niente col primo. Ottieni quell'errore perché stai provando di inviare un header benché hai già inviato l'output a video.

  7. #7
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Originariamente inviato da philbert
    no scusate...

    l'istruzione
    Codice PHP:
    !$variabile && $variabile 'valore'
    è perfettamente valida sotto tutti i punti di vista...

    significa:
    assegna la stringa 'valore' alla variabile $variabile se e solo se $variabile è false oppure non esiste
    ciò che ho scritto

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  8. #8
    Originariamente inviato da philbert
    no scusate...

    l'istruzione
    Codice PHP:
    !$variabile && $variabile 'valore'
    è perfettamente valida sotto tutti i punti di vista...

    significa:
    assegna la stringa 'valore' alla variabile $variabile se e solo se $variabile è false oppure non esiste

    rimane comunque probabilmente vero il fatto che
    Ok... anche il manuale mi conferma:
    se il primo operatore dell'AND è falso (quindi nel mio caso se variabile è avvalorata) segna tutto l'AND come falso e chiude l'operazione.
    altrimenti va a controllare il secondo operatore, che è un assgnamento, pertanto la esegue e da come risultato TRUE.

    La domanda che mi rimane è perché una tale operazione dovrebbe cambiarmi le header information?

    In ogni caso mi pare ovvio che può essere risolto sostituendolo con un banale if

  9. #9
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Originariamente inviato da irdg
    La domanda che mi rimane è perché una tale operazione dovrebbe cambiarmi le header information?
    No hai letto quello che ho scritto, giusto?

    Non c'entra, a meno che questa costruzione ti stampi un warning ovviamente (che possa essere probabile).

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  10. #10
    Aspetta... mi stai forse dicendo che l'errore è il fatto che ho impostato

    error_reporting(E_ALL);

    e quindi mi stampa un warning per variabile non esistente?
    è quello che mi cambia l'Header?

    dubito ci sarei mai arrivato

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.