파일에 텍스트를 만들거나 추가하는 방법
"logs.txt"라는 텍스트 파일을 만들거나 추가하려고 합니다. 사용자가 웹사이트에 로그인하거나 로그아웃할 때마다. 그러나 현재 코드에는 데이터를 추가하거나 파일이 존재하지 않는 경우 파일을 생성하는 데 문제가 있습니다.
원래 코드는 파일을 여는 데 "wr" 모드를 사용합니다. 이 모드는 쓰기 위해 파일을 열고 파일을 자릅니다. 파일 길이를 0으로 만듭니다. 데이터를 추가하려면 대신 파일을 열고 파일 끝에 추가하는 "a" 모드를 사용해야 합니다.
또한 여러 사용자가 액세스하려고 하면 코드가 경합 상태에 빠지기 쉽습니다. 파일을 동시에. 이를 방지하려면 FILE_APPEND와 함께 LOCK_EX 플래그를 사용할 수 있습니다. 이렇게 하면 파일에 대한 배타적 잠금이 획득되어 한 번에 하나의 프로세스만 파일에 쓸 수 있습니다.
다음은 이러한 문제를 해결하는 개선된 버전의 코드입니다.
<code class="php">$txt = "user id date"; $myfile = file_put_contents('logs.txt', $txt.PHP_EOL, FILE_APPEND | LOCK_EX);</code>
이 코드는 추가 모드에서 "logs.txt" 파일을 생성하거나 열어 새 데이터가 파일 끝에 추가되도록 합니다. 또한 쓰기 중에 파일에 대한 독점 잠금을 획득하여 여러 사용자가 동시에 파일에 쓸 수 없도록 합니다.
위 내용은 PHP에서 파일에 텍스트를 안전하게 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!