Funzionamento della sequenza di escape "\n";

Ciao a tutti  :)

Vorrei avere delle delucidazione sul corretto funzionamento della sequenza di escape "\n";

Il significato è nuova line, ebbene come funziona, esempio:

1. <?php
2. echo "oggi è una bella giornata\"n;
3. echo 'peccato che mi tocca lavorare';
?>

la riga 2 dovrebbe stampare a video  oggi è una bella giornata e andare a capo per stampare la seconda stringa, invece cio non avviene.

Io generalmente uso <br> che funziona sempre.

Quindi non capisco il funzionamento, come pure la tabulazione \t

E' ovvio che sbaglio qualcosa nella sintassi, ma cosa?

inviato 11 anni fa
TrxWeb
modificato 11 anni fa
X 0 X

Sorry avevo sbagliato a digitare l'istruzione alla riga 2 ora è apposto.

Ciao a tutti  :)

Vorrei avere delle delucidazione sul corretto funzionamento della sequenza di escape "\n";

Il significato è nuova line, ebbene come funziona, esempio:

1. <?php
2. echo "oggi è una bella giornata\n";
3. echo 'peccato che mi tocca lavorare';
?>

la riga 2 dovrebbe stampare a video  oggi è una bella giornata e andare a capo per stampare la seconda stringa, invece cio non avviene.

Io generalmente uso <br> che funziona sempre.

Quindi non capisco il funzionamento, come pure la tabulazione \t

E' ovvio che sbaglio qualcosa nella sintassi, ma cosa?

risposto 11 anni fa
TrxWeb
modificato 11 anni fa
X 0 X

Di norma l'output prodotto dal PHP viene mostrato attraverso un browser. Poiché il browser formatta la pagina seguendo le specifiche HTML (sto semplificando...) allora tutti i caratteri di "a capo ("\n") e tabulazione ("\t") verranno ignorati. Nell'HTML infatti per ottenere l'interruzione di una riga bisogna usare un tag particolare, il break row (<br>).

Questo non significa quindi che le sequenza di escape "\n" e "\t" non abbiano effetto, infatti se richiedi al browser di mostrarti l'HTML vedrai che tutti gli "a capo" e le tabulazioni inserite saranno correttamente presenti, solo che in HTML non hanno valore.

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Scusa, ma allora a cosa serve utilizzare \n o \t se poi l'output generato non è quello che si desidera, un utente che visita una pagina micha va a guardarsi il codice html generato per vedere se ci sono interruzioni di pagina :dunno:

 :bye:

risposto 11 anni fa
TrxWeb
X 0 X

Quando l'output è destinato ad altri scopi allora servono eccome! Pensa alla scrittura di un file di testo o di una mail.

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Quindi è sbagliato da parte di chi ti dice di utilizzare "\n"; semplicemente per stampare una stringa?

 :-\

risposto 11 anni fa
TrxWeb
X 0 X

dipende dal contesto  :dunno:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Un esempo è quello indicato al primp post di questo 3d.

Cmq, scusa se vado ot, ma per sola curiosità non vorrei aprirere un altro topic per questa banalità.

In tutte le guide viene indicato che il codice di php si inserisce nel codice HTML, bene, ma è obbligatorio, o meglio succede qualche cosa a livello di compatibilita se ometto il codice html. Ad esempio

Metodo consigliato

  
<html>
<head>
<title>...</title>
</head>

<body>
<!-- codice HTML non interpretato -->

<?php
/* codice PHP interpretato */
?>

<!-- codice HTML non interpretato -->
</body>
</html>

metodo 2:

se invece usassi direttamente solo codice php in una pagina, omettendo quindi i tag html?

<?php
print "ciao mondo!";
?>

Metodo 3:

ed è giusto fare in quest'altro modo, invece? Ovvero inserire i tag html ma utilizzando il php...

echo "<html>";
echo "<body>";
echo etc etc.
echo "oggi è: ".date("j/n/Y");
echo ect. etc.
echo "</body>";
echo "<html>";
?>

 :dunno:

risposto 11 anni fa
TrxWeb
X 0 X

Se usi il PHP per generare pagine web allora ti devi attenere alle specifiche HTML (o XHTML). Tutto qui.

Se usi il PHP per altri scopi (es. web services, RSS) allora dovrai seguire altre regole (XML).

Paese che vai, gente che trovi  ;)

Come ottenere un risultato poi è un altro discorso (mi riferisco a come produrre l'HTML). Anche in questo contesto vale la regola "più semplice è, meglio è" da applicare di volta in volta: quello che è buono in un contesto può non esserlo in un altro.

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Grazie  O0

risposto 11 anni fa
TrxWeb
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda