>  기사  >  백엔드 개발  >  PHP 파일 처리의 고급 응용 프로그램 - 원격 파일 액세스 및 잠긴 파일

PHP 파일 처리의 고급 응용 프로그램 - 원격 파일 액세스 및 잠긴 파일

黄舟
黄舟원래의
2017-04-17 17:36:562436검색

PHP 파일 처리의 고급 응용 프로그램 - 원격 파일 액세스 및 잠긴 파일

PHP에서는 파일에 대한 기본적인 읽기 및 쓰기 작업 외에도 다음을 수행할 수 있습니다. 또한 파일 포인터를 검색하고 찾고 읽고 있는 파일을 잠급니다.

이전글 "PHP 파일 처리 - 파일 열기/닫기 ", "PHP 파일 처리 - 파일 읽기(1문자, 문자열) " , " PHP 파일 처리 - 파일 읽는 방법" 및 "PHP 파일 처리 - 파일 쓰기 및 파일 운영"에서는 파일 처리의 기본 읽기 및 쓰기 작업을 소개합니다. 이 섹션에서는 고급 파일 처리에 대해 자세히 알아봅니다. 기법.

1: 원격 파일 액세스

PHP는 URL 형식의 파일 호출을 지원합니다. php.ini에서 설정하면 됩니다. ini를 선택하고 이 옵션을 ON으로 설정합니다. 서버를 다시 시작한 후 HTTP 또는 FTP URL 형식인

을 사용할 수 있습니다. 예:

fopen("http://http://127.0.0.1/php/1.php","rb");

2: 파일 잠금

텍스트 파일에 내용을 쓸 때는 다른 사용자가 파일 내용을 수정하지 못하도록 먼저 파일을 잠가야 합니다. PHP에서 파일을 잠그는 기능은 Flock() 입니다. 함수는 다음과 같습니다:

bool flock ( resource $handle , int $operation [, int &$wouldblock ] )
参数值 说明
LOCK_SH 取得共享锁定(读取文件)
LOCK_EX 取得独占锁定(写入文件)
LOCK_UN 释放锁定
LOCK_NB 防止 flock()在锁定时堵塞

다음 예에서는 Flock() 함수를 사용하여 파일을 잠근 다음 데이터를 쓰고 마지막으로 파일을 잠금 해제하고 닫습니다.

<?php
header("Content-Type:text/html; charset=utf-8");
$filename = "tm.txt";        //声明要打开的文件名称
$fd = fopen($filename,"w");   //以w 模式打开文件
flock($fd,LOCK_EX);          //锁定文件(独占共享)
fwrite($fd,"我爱PHP中文网 www.php.cn");      //向文件中写入数据
flock($fd,LOCK_UN);          //解除文件
fclose($fd);                 //关闭文件指针
readfile($filename);         //输出文件内容
?>

출력 결과는 다음과 같습니다.

PHP 파일 처리의 고급 응용 프로그램 - 원격 파일 액세스 및 잠긴 파일

참고:

파일에 데이터를 쓸 때는 W를 사용하거나 w+ 모드에서 파일을 엽니다. 이때 LOCK_EX를 사용하면 동시에 파일에 접근하는 다른 사용자가 파일 크기를 확보할 수 없고 작업을 수행할 수 없습니다. !

다음 기사에서는 파일 처리의 고급 응용 프로그램을 위한 파일 포인터를 계속 소개할 예정입니다. 자세한 내용은 "PHP 파일 처리의 고급 응용 프로그램 - 파일 포인터"를 참조하세요. !

위 내용은 PHP 파일 처리의 고급 응용 프로그램 - 원격 파일 액세스 및 잠긴 파일의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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