>  기사  >  백엔드 개발  >  내 PHP 코드에서 개행 문자가 `` 태그로 바뀌지 않는 이유는 무엇입니까?

내 PHP 코드에서 개행 문자가 `` 태그로 바뀌지 않는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-05 09:16:02301검색

Why Are Newlines Not Replacing with `` Tags in My PHP Code?

줄바꿈을 HTML 구분 태그로 바꾸기: 문제 해결

많은 PHP 사용자는 줄바꿈을
태그. preg_replace(), str_replace() 및 nl2br() 을 포함하여 다양한 접근 방식을 사용할 수 있지만 일부 접근 방식은 원하는 결과를 얻지 못할 수도 있습니다. 이 게시물에서는 이 문제의 잠재적인 원인을 살펴보고 해결책을 제시하겠습니다.

제공된 코드 조각은 줄바꿈을 바꾸는 세 가지 일반적인 방법을 보여줍니다. 그러나 저자는 이중 개행 문자("rr")가 포함된 텍스트에도 불구하고 이러한 접근 방식 중 어느 것도 성공하지 못했다고 보고합니다. 이는 문제가 선택한 방법이 아니라 텍스트 자체에 있을 수 있음을 시사합니다.

추가 조사를 통해 $description 변수가 작은따옴표(')로 묶여 있음이 분명해졌습니다. 큰따옴표(")와 달리 작은따옴표는 개행 문자("n")가 포함된 이스케이프 시퀀스를 해석하지 않습니다. 결과적으로 텍스트는 변경되지 않은 상태로 유지됩니다.

이 문제를 해결하려면 텍스트를 큰따옴표로 묶으면 이스케이프 시퀀스가 ​​해석되고 개행 문자가
태그로 올바르게 대체될 수 있습니다.

다음은 큰따옴표와 함께 nl2br() 함수를 사용하는 방법에 대한 예입니다. 텍스트:

<code class="php">$description = "Line one\r\rline two";
echo nl2br($description);</code>

이 코드는 모든 이중 줄 바꿈을
태그로 대체하여 원하는 형식의 텍스트를 생성합니다.

위 내용은 내 PHP 코드에서 개행 문자가 `` 태그로 바뀌지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.