줄 바꿈 문자를 만드는 방법?
PHP에서 줄 바꿈 문자를 만들려고합니다.
echo $clientid;
echo ' ';
echo $lastname;
echo ' ';
echo '\r\n';
그런 다음 작성된 파일을 메모장에서 열고 문자 그대로 개행을 씁니다.
요한 1 서 \ r \ n 요한 1 서 \ r \ n 요한 1 서 \ r \ n
의 많은 변형을 시도 \r\n
했지만 작동하지 않습니다. 개행이 개행으로 바뀌지 않는 이유는 무엇입니까?
큰 따옴표로 묶인 문자열 만 이스케이프 시퀀스 \r
와 \n
'0x0D'및 '0x0A'로 각각 해석 하므로 원하는 경우 :
"\r\n"
반면 작은 따옴표로 묶인 문자열 은 이스케이프 시퀀스 \\
및 만 알고 \'
있습니다.
따라서 작은 따옴표로 묶은 문자열을 다른 곳에서 생성 된 줄 바꿈과 연결하지 않으면 (예 : 큰 따옴표로 묶은 문자열 "\r\n"
사용 또는 chr
function 사용 chr(0x0D).chr(0x0A)
) 작은 따옴표로 묶은 문자열 내에서 줄 바꿈을 갖는 유일한 다른 방법은 문자 그대로 편집기에서 입력하는 것입니다.
$s = 'some text before the line break
some text after';
특정 문자 순서가 필요한 경우 편집기에서 줄 바꿈 설정을 확인하십시오 ( \r\n
예 :).
플랫폼 독립적 인 라인 엔딩의 경우 다음 과 같이 미리 정의 된 PHP_EOL
상수를 사용할 수 있습니다 .
echo $clientid, ' ', $lastname, PHP_EOL;
PHP의 "echo"명령은 출력을 원시 html로 브라우저에 출력하므로 큰 따옴표로 묶어도 HTML의 개행 문자는 아무 의미가 없기 때문에 브라우저가 두 줄로 구문 분석하지 않습니다. 따라서 다음 중 하나를 사용해야합니다.
echo [output text]."<br>";
"echo"를 사용하거나 대신 fwrite를 사용하십시오 ...
fwrite([output text]."\n");
"\ n"대신 HTML 줄 바꿈이 출력됩니다.
플랫폼에 관계없이 올바른 PHP_EOL을 사용하여 올바른 문자를 얻으십시오.
http://us3.php.net/manual/en/reserved.constants.php
간단한 사용법 예 :
<?php
$data = 'First line' . PHP_EOL .
'Second line' . PHP_EOL .
'Third line';
file_put_contents("filename.txt", $data);
?>
큰 따옴표 사이의 문자열이 ""
보간됩니다. 즉, 이스케이프 된 문자를 인쇄 가능한 문자로 변환합니다.
작은 따옴표 사이의 문자열 ''
은 리터럴이므로 문자를 입력 한 그대로 처리됩니다.
같은 줄에 둘 다 가질 수 있습니다.
echo '$clientid $lastname ' . "\r\n";
echo "$clientid $lastname \r\n";
출력 :
$clientid $lastname
1 John Doe
이것을 사용해야합니다 :
"\n"
PHP EOL을 보고 싶을 수도 있습니다 .
실제로 \r\n
출력의 html 쪽입니다. 이러한 문자를 사용하면 HTML 코드에서 개행을 작성하여 더 읽기 쉽게 만들 수 있습니다.
echo "<html>First line \r\n Second line</html>";
출력합니다 :
<html>First line
Second line</html>
페이지를 보는 것은 :
First line Second line
당신이 정말로 이것을 의미한다면, 당신은 작은 따옴표를 ""따옴표로 고치기 만하면됩니다 :
echo "\r\n";
그렇지 않으면 텍스트를 분할하려는 경우 샘플 '첫 번째 줄'과 '두 번째 줄'에서 html 코드를 사용해야합니다. <br />
:
First line<br />Second line
출력됩니다 :
First line
Second line
또한 전체 스크립트를 다음과 같이 바꾸면 더 읽기 쉽습니다.
echo "$clientid $lastname \r\n";
w3school는 다음과 같이 제공했습니다.
echo nl2br("One line.\n Another line.");
이 기능을 사용하면 할 수 있습니다 .. 나는 위에서 언급 한 다른 방법을 시도했지만 도움이되지 않습니다.
어떤 이유로 든 PHP에서 줄 바꿈 이스케이프에 대해 묻는 모든 단일 게시물은 작은 따옴표로 묶은 문자열에 줄 바꿈을 삽입하면 생각대로 정확하게 수행됩니다.
예 1.
echo 'foo\nbar';
예제 1에서는 원하는 결과를 명확하게 인쇄하지 않지만 작은 따옴표로 줄 바꿈을 이스케이프 할 수는 없지만 다음과 같이 할 수 있습니다.
예 2.
echo 'foo
bar';
예제 2에는 정확히 원하는 동작이 있습니다. 불행하게도 삽입되는 줄 바꿈은 운영 체제에 따라 다릅니다. 웹 브라우저 / 서버가 줄 바꿈을 \ r, \ r \ n 또는 \ n인지 올바르게 해석하므로 일반적으로 문제가되지 않습니다.
분명히 웹 브라우저와 여러 운영 체제에 다른 수단을 통해 파일을 배포하려는 경우에는이 솔루션이 적합하지 않습니다. 이 경우 다른 답변 중 하나가 표시됩니다.
참고 : 기능이 풍부한 텍스트 편집기를 사용하면 파일을 편집하는 운영 체제와 다른 운영 체제에서 개행을 나타내는 이진 문자로 개행을 삽입 할 수 있어야합니다. 다른 모든 방법이 실패하면 16 진 편집기를 사용하여 이진 ASCII 문자를 삽입하면됩니다.
캐리지 리턴에는 chr (13)을 사용하고 줄 바꾸기에는 chr (10)을 사용하십시오.
echo $clientid;
echo ' ';
echo $lastname;
echo ' ';
echo chr (13). chr (10);
텍스트 문자열에서 줄 바꿈을 얻으려면 PHP nl2br을 사용하십시오.
$ text = "마누는 좋은 소년입니다. (Enter) 그는 잘 코딩 할 수 있습니다.
echo nl2br ($ text);
결과.
마누는 좋은 소년입니다.
그는 잘 코딩 할 수 있습니다.
나는 또한 작은 따옴표와 큰 따옴표 모두 에서이 조합을 시도했습니다. 그러나 아무도 효과가 없었습니다. 큰 따옴표에 \n
더 잘 사용 하는 대신 <br/>
. 이렇게 ..
$variable = "and";
echo "part 1 $variable part 2<br/>";
echo "part 1 ".$variable." part 2";
echo 문은 항상 <br>
큰 따옴표 안에 사용 합니다.
참고 URL : https://stackoverflow.com/questions/4238433/php-how-to-create-a-newline-character
'development' 카테고리의 다른 글
curl을 사용하여 파일과 함께 POST 데이터 업로드 (0) | 2020.02.26 |
---|---|
Javascript에서 소수점 이하 두 자리로 부동 소수점을 구문 분석하는 방법은 무엇입니까? (0) | 2020.02.25 |
CSS로 배경 이미지의 크기를 설정 하시겠습니까? (0) | 2020.02.25 |
PowerShell이 Windows에서 Cygwin 셸을 교체 할 준비가 되셨습니까? (0) | 2020.02.25 |
다음 SDK 구성 요소의 라이센스 계약에 동의하지 않았습니다. (0) | 2020.02.25 |