> 백엔드 개발 > PHP 문제 > PHP를 사용하여 파일을 작성할 때 사용자 단일성을 보장하는 방법

PHP를 사용하여 파일을 작성할 때 사용자 단일성을 보장하는 방법

autoload
풀어 주다: 2023-03-08 22:08:01
원래의
1550명이 탐색했습니다.

구문 형식은 다음과 같습니다.

flock(resource $handle, int $operation[, int &$wouldblock])
로그인 후 복사

a.$handle: 파일 시스템 포인터, 즉 fopen() 을 사용하여 생성된 파일 리소스; $handle:文件系统指针,即使用 fopen() 创建的文件资源;

b.$operation:文件锁类型,可以是以下值之一:

  • LOCK_SH 取得共享锁定(读取的程序);

  • LOCK_EX 取得独占锁定(写入的程序);

  • LOCK_UN 释放锁定(无论共享或独占);

  • 如果不希望 flock() 在锁定时堵塞,则可以在 $operation 中添加 LOCK_NB 参数(Windows 上还不支持)。

c.$wouldblock:可选参数,如果希望文件锁定时堵塞其它进程,则可以将该参数设置为 1 true。(Windows 上不支持)。

PS: 使用 flock() 函数不仅可以为文件加锁,好可以解锁文件。

示例:

<?php
    $file = fopen(&#39;./test.txt&#39;,&#39;w+&#39;);
    if(flock($file, LOCK_EX|LOCK_NB))
    {
     fwrite($file, &#39;PHP中文网&#39;.date(&#39;Y-m-d H:i:s&#39;, time()));
     flock($file, LOCK_UN);
     }else{
     echo "string";
     }
     fclose($file);
?>
로그인 후 복사

运行结果:

test.txt

b .$Operation: 파일 잠금 유형. 다음 값 중 하나일 수 있습니다.

  • LOCK_SH 공유 잠금 획득(프로그램 읽기)
  • LOCK_EX는 독점 잠금 획득(프로그램 작성) 🎜
  • 🎜 LOCK_UN은 잠금을 해제합니다(공유 또는 독점). /li>
  • 🎜 잠금 시 Flock()이 차단되는 것을 원하지 않으면 LOCK_NB 매개변수를 $Operation에 추가할 수 있습니다(Windows에서는 아직 지원되지 않음). 🎜
🎜 🎜c🎜.$wouldblock: 선택적 매개변수입니다. 파일이 잠겨 있을 때 다른 프로세스를 차단하려면 이 매개변수를 1로 설정하세요. 코드> 또는 true. (Windows에서는 지원되지 않습니다). 🎜🎜PS: flock( ) 기능은 파일을 잠글 수 있을 뿐만 아니라 파일을 잠금 해제할 수도 있습니다. 🎜🎜🎜예: 🎜🎜
PHP中文网2021-03-23 09:09:31
로그인 후 복사
🎜🎜실행 결과: 🎜
🎜🎜 test.txt 파일에 🎜rrreee🎜 쓰기 권장: "🎜php video tutorial🎜" "🎜php Tutorial 🎜》🎜

위 내용은 PHP를 사용하여 파일을 작성할 때 사용자 단일성을 보장하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿