2010-07-18 20 views

risposta

7

Sono escape sequences. \n è una nuova riga e \r è un ritorno a capo.

Nella maggior parte degli editor di testo di Windows hanno un ritorno a capo come \ r \ n e su UNIX è \ n

11

\r è il ritorno carrozza

\n è la nuova riga

Questi sono disponibile in molte altre lingue oltre a PHP.

19

Sono "carriage return" e "line feed" rispettivamente. Tipicamente su Windows, è necessario che entrambi rappresentino un terminatore di riga: "\ r \ n" mentre sulla maggior parte (tutti?) Dei sistemi Unix, "\ n" è sufficiente.

Vedere la Wikipedia Newline entry per maggiori dettagli riguardo i capricci dei diversi sistemi.

Vedere la PHP manual per ulteriori dettagli su sequenze di escape in generale, e gli altri disponibili in PHP.

Molti altri linguaggi (ad esempio C, C++, C#, Java, Perl, Python, Ruby) condividono le stesse sequenze di escape per ritorno a capo e avanzamento riga, ma sono tutti specificati per la singola lingua. (In altre parole, è linguaggio specifico, ma la risposta sarebbe la stessa per molte lingue.)

5

\r è un Carriage Return \n è un avanzamento riga (o new line).

Sui sistemi Windows questi insieme fanno un ritorno a capo (vale a dire ogni volta che si preme il tasto enter il fix otterrà un \r\n).

In PHP se apri un file di testo in stile Windows avrai \r\n alla fine dei paragrafi/linee in cui hai colpito invio. Se si trattasse di un file di testo in stile Unix, si otterrebbe solo uno \n.

4

Non è una risposta alla tua domanda, ma rilevanti comunque: mi consiglia di utilizzare la costante PHP_EOL ogni volta che si desidera inserire una nuova riga. La costante PHP_EOL contiene i caratteri della nuova riga corretta per la piattaforma su cui viene eseguito lo script (\ n su Unix, \ r \ n su Windows).

2

\n è il newline o linefeed, l'altro lato \r è il ritorno a capo. Differiscono in ciò che li usa. Windows utilizza \r\n per indicare che è stato premuto il tasto Invio, mentre Linux e Unix utilizzano \n per indicare che è stato premuto il tasto Invio.

In Unix e tutti i sistemi di tipo Unix, \n è il codice per la fine della linea, \r significa niente di speciale. Nei vecchi sistemi Mac (pre-OS X), \r era invece il codice per il fine linea. \r\n è la terminazione di riga standard per i formati di testo su Internet.

\r comanda al carrello di tornare indietro a sinistra fino a quando non tocca l'arresto più a sinistra, \n ordina al rullo di arrotolare una linea (un'operazione molto più veloce). Questo è il motivo per cui hai sempre \ r prima di \ n, in modo che il rullo possa muoversi mentre il carrello sta ancora andando verso sinistra.

Problemi correlati