Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Apici e virgolette

  1. #1

    Apici e virgolette

    Stasera mi sono accorto di una cosa che mi ha mandato in crisi... sto studiando PHP e al momento sono al flusso di dati. Béh finora ho sempre scritto con echo e assegnato senza problemi dati a una variabile... ma facevo entrambe le cose incurante dei segni che usavo!
    Pensavo che dire:
    codice:
    $a="topo"
    echo "$a significa: ".$a;
    e
    codice:
    $a="topo"
    echo '$a significa: '.$a;
    E invece no VVoVe: mi sono accorto che se uso le virgolette anche la $a che non ha i . (punti) attorno viene stampata a video come variabile, mentre se uso gli apici non accade. E' normale, vero? Come mai accade? Io non pensavo vi fossero differenze. :master:

  2. #2
    si è normale, le variabili incluse tra doppi apici vengono interpretate dal parser, invece ciò che è scritto tra apici singoli viene considerato solo testo. Infatti c'è anche una minima differenza di velocità usando uno o l'altro.
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

  3. #3
    Bene... quindi in pratica sarebbe meglio far uso degli apici singoli...

  4. #4
    Ciao, l'uso degli apici singoli o doppi dipende dalle situazioni ed anche in parte dalla leggibilità del codice.
    Se devi inserire tante variabili in una stringa può essere scomodo usare di continuo la concatenazione.
    Se nella stringa ci sono tanti apostrofi l'uso delle virgolette singole ti costringe ad effettuarne l'escape.

    Andrebbe valutato di circostanza in circostanza.

    Oltre agli apici per delimitare le stringhe c'è anche il sistema dei documenti here (heredoc).

    Forse può interessarti questo articolo: http://freephp.html.it/articoli/view...olo.asp?id=151 la prima parte parla proprio di questo.

    Tieni presente poi che echo non è l'unica funzione per l'output, anche se è la più veloce.

    ciao

  5. #5
    Un momento, un momento :master: cosa intendi per escape? E che differenza fa se uso echo o un comando per l'output? Per Output intendete ad esempio print?

  6. #6
    Per escape intendo la necessità di utilizzare la backslash per segnalare a PHP che alcuni caratteri particolari sono parte della stringa:

    $a = 'Egli disse:"L\\'importante è navigare su html.it"';

    se non segnali l'apostrofo viene interpretato come fine stringa.

    $a = "Egli disse:\"L'importante è navigare su html.it\"";

    se non segnali i doppi apici vengono interpretati come fine stringa.

    Per l'output ci sono diverse funzioni print, printf, sprintf, vprintf, print_r ...ognuna con la sua sintassi e il suo campo d'utilizzo anche se sicuramente echo è quella che userai nella maggior parte dei casi.

    La documentazione sulle stringhe è qui
    http://www.php.net/types.string
    come ti dicevo se non hai il tempo di consultarla dai un'occhiata all'articolo di freephp e trovi le basi per usare le stringhe.

    ciao

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.