Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di ada50
    Registrato dal
    Aug 2009
    Messaggi
    27

    Guida PHP di base chiarimenti

    Salve mi sto avvicinando al linguaggio PHP un pò per curiosità un pò per voglia di conoscenza.
    Sto seguendo l'ottima guida del Vs. sito che riporto in oggetto, tutto bene fino a pagina 8 "Tipi di dato"
    nella parte in cui si parla dell'uso del backslash (carattere escape) nel codice d'esempio in nessuna delle stringhe è riportato il backslash e quindi non si capisce bene come và utilizzato. Ho provato ad aprire la pagina con diversi browsers ma la visualizzazione è la stessa. Riporto quì il codice così come scritto nella pagina:

    Codice PHP:
    <?php 
    echo 'Torniamo un'altra volta'; // stampa: Torniamo un'altra volta 
    echo "Torniamo un'altra volta"// stampa: Torniamo un'altra volta 
    echo "Torniamo un'altra volta"// stampa: Torniamo un'altra volta 
    echo 'Torniamo un'altra volta'; // causa un errore, perchè l'apostrofo viene scambiato per l'apice di chiusura 
    echo '
    Anna disse "Ciao" e se ne andò'; // stampa: Anna disse "Ciao" e se ne andò 
    echo "Anna disse "Ciao" e se ne andò"; // stampa: Anna disse "Ciao" e se ne andò 
    echo '
    Anna disse "Ciao" e se ne andò'; // stampa: Anna disse "Ciao" e se ne andò 
    echo "Anna disse "Ciao" e se ne andò"; // errore 
    ?>
    Lo stesso dicasi per il codice d'esempio successivo a quello che ho riportato.

    Non sò se ho scritto nella forum giusto nel caso non dovesse esserlo chiedo scusa a moderatori e utenti e vi chiederei di indirizzarmi.
    Grazie
    ada50

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Codice PHP:
    <?php echo 'Torniamo un\'altra volta'// stampa: Torniamo un'altra volta 
    echo "Torniamo un'altra volta"// stampa: Torniamo un'altra volta 
    echo "Torniamo un'altra volta"// stampa: Torniamo un'altra volta 
    echo 'Torniamo un'altra volta'; // causa un errore, perchè l'apostrofo viene scambiato per l'apice di chiusura 
    echo '
    Anna disse "Ciao" e se ne andò'; // stampa: Anna disse "Ciao" e se ne andò 
    echo "Anna disse \"Ciao\" e se ne andò"; // stampa: Anna disse "Ciao" e se ne andò 
    echo '
    Anna disse "Ciao" e se ne andò'; // stampa: Anna disse "Ciao" e se ne andò 
    echo "Anna disse "Ciao" e se ne andò"; // errore ?>
    Capisci adesso ?

    ma bisogna provare quel codice per capire l'uso del back slash.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371
    Non capisco come mai il primo caso non ti dia errore. Forse è perché nel copia incolla ti sei perso l'apostrofo inglese. Possibile?

    Comunque il carattere di escape va utilizzato quando usi lo stesso tipo di apice per identificare una stringa.

    Ad esempio 'l'anno' vuole l'escape, "l'anno" non lo necessita (ma mi pare che se ce lo metti viene comunque interpretato.

    Differenza tra apice singolo ed apice doppio: l'apice singolo non interpreta le variabili all'interno della stringa, l'apice doppio sì.

    Ad esempio
    $a = "ciao";
    echo '$a' stamperà $a
    echo "$a" stamperà ciao

    vale solo per le variabili e non certo per le funzioni. echo "$pippo->pluto()" non funziona.

    Spero di essere stato chiaro.
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  4. #4
    Utente di HTML.it L'avatar di ada50
    Registrato dal
    Aug 2009
    Messaggi
    27
    Ringrazio anticipatamente tutti e due per la risposta.
    @badaze guardando la correzione che hai apportato alla prima stringa mi è più chiaro l'utilizzo del backslash, e la posizione in cui inserirlo, come mi è chiaro il perché nella quarta dia errore, lo sstesso dicasi per le successive. Leggendo il testo della guida mi era chiaro che l'escape viene inserito quando si ha intenzione usare lo stesso tipo di apice per identificare la stringa, non era chiaro nel codice d'esempio riportato e questo crea ad un neofita del linguaggio come me un po' di confusione.

    @Reiuky Il codice l'ho riportato esattamente come è nell'esempio della guida, probabilmente è un errore di trascrizione da parte di chi ha stilato la guida vorrei informarlo ma non ho trovato nessun link utile per farlo.
    Ultima modifica di ada50; 18-08-2014 a 12:47
    ada50

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 © 2024 vBulletin Solutions, Inc. All rights reserved.