>백엔드 개발 >PHP 튜토리얼 >PHP에서 `\n`을 사용할 때 `fwrite`가 새 줄을 만들지 않는 이유는 무엇입니까?

PHP에서 `\n`을 사용할 때 `fwrite`가 새 줄을 만들지 않는 이유는 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-11 00:08:03646검색

Why does `fwrite` not create a new line when using `n` in PHP?

PHP에서 파일에 새 줄 쓰기(줄 바꿈)

이 문제는 fwrite를 'n'과 함께 사용하여 새 줄을 쓸 때 발생합니다. 줄을 파일에 추가하고 새 줄을 만드는 대신 'n'을 파일에 문자열로 인쇄합니다.

해결하려면 이 경우 'n'을 'n'으로 바꾸면 됩니다. '(작은따옴표)를 사용하면 이스케이프 시퀀스가 ​​인식되지 않습니다. 이는 이스케이프되지 않은 문자열에 '(작은따옴표)가 사용되고 'n'이 n 문자를 나타내는 문자열 리터럴로 처리되기 때문입니다.

예를 들어 다음 코드를 고려하세요.

$file = fopen('ids.txt', 'w');
fwrite($file, $gem->getAttribute('id') . "\n");

이 코드에서는 "n"이 줄바꿈 문자로 사용되어 파일에 새 줄이 생성되도록 합니다.

사용에 관해 rn(캐리지 리턴 및 새 줄)은 일반적으로 Windows 시스템에서 새 줄을 나타내는 데 사용됩니다. 그러나 운영 체제 전체에서 일관되게 줄 끝을 작성하려면 모든 운영 체제에 "n"을 사용하는 것과 같은 단일 규칙을 채택해야 합니다. 또한 파일을 바이너리 모드(예: 'wb' 사용)로 여는 것이 좋습니다. 이렇게 하면 규칙이 다른 시스템 간에 파일을 전송할 때 줄 끝이 올바르게 기록됩니다.

위 내용은 PHP에서 `\n`을 사용할 때 `fwrite`가 새 줄을 만들지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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