An explanation of how PHP handles line breaks

Source: Internet
Author: User
First of all, the difference between \ R and \ n
The origins and differences between the two concepts of carriage return "(carriage return) and" line feed ".
Before the computer appeared, there was a thing called a telex typewriter (the concept of TTY under the teletype Model 33,linux/unix), which can be played 10 characters per second. But it has a problem, that is, when the line is finished, it will take 0.2 seconds to hit two characters. If there are new characters coming in this 0.2 seconds, then this character will be lost.

So, the developers think of a way to solve this problem, is to add two after each line to end the character. One is called "carriage return", which tells the typewriter to position the printhead at the left border, and the other is called "line break", telling the typewriter to move the paper down one line. This is the origin of "line break" and "carriage return", from their English name can also be seen in one or two.

Later, the computer invented, these two concepts are also like to the computer. At that time, memory was expensive, and some scientists thought it would be too wasteful to add two characters at the end of each line. So, there was a disagreement.

Unix system, the end of each line only "< line >", that is, "\ n", the Windows system, each line at the end of "< newline >< Enter >", that is "\n\r", Mac system, each line at the end of "< Enter >", that is "\ n ";。 A direct consequence of this is that if the file under the Unix/mac system is opened in Windows, all the text will be turned into one line, and if the files in Windows are opened under Unix/mac, a ^m symbol may appear at the end of each line.

C Language Programming (Windows system)
\ r is return to the beginning of the line this will overwrite the previous output.
such as: (Note the following is the C + + code)
It only shows Xixi and the hahaha back is covered.

int main () {cout << "hahaha" << "\ r" << "Xixi";}


\ n is the carriage return + line break move the cursor first to the beginning and then to the next line, which is the beginning of the next line.

int main () {cout << "hahaha" << "\ n" << "Xixi";}


Expressions of two-line breaks
In ordinary files such as (. txt,.php, etc.) newline characters are "\ r \ n", "\ n", "\ r". But in the HTML file (this is explained here: HTML textarea text field of the line is also "\ r" or "\ n") is the "<br/>" tag.
Use PHP scripts to convert.
The code is as follows (come to PHP manual):

Order of replacement$str= "line1\nline2\rline3\r\nline4\n"; $order =array ("R \ n", "\ n", "\ R"); $replace = ' <br/> '; $newstr =str_replace ($order, $replace, $STR);

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.