php flock函数实例
发布时间:2022-07-29 10:42:39 所属栏目:PHP教程 来源:互联网
导读:由于 flock() 需要一个文件指针,因此可能不得不用一个特殊的锁定文件来保护打算通过写模式打开的文件的访问(在 fopen() 函数中加入 w 或 w+),实例代码如下: fp = fopen(test.txt, ab); //from the end flock($fp, lock_ex); //lock the file for
由于 flock() 需要一个文件指针,因此可能不得不用一个特殊的锁定文件来保护打算通过写模式打开的文件的访问(在 fopen() 函数中加入 "w" 或 "w+"),实例代码如下: fp = fopen("test.txt", 'ab'); //from the end flock($fp, lock_ex); //lock the file for waiting... fwrite($fp, 'just a test string.......'); //start writing... flock($fp, lock_un); //release write lock fclose($fp); //close the file读操作: //read $fp = fopen("test.txt", 'r'); flock($fp, lock_sh); //read from the file....... flock($fp, lock_un); <?php $fp = fopen("/tmp/lock.txt", "w+"); if (flock($fp, lock_ex)) { // 进行排它型锁定 fwrite($fp, "write something here "); flock($fp, lock_un); // 释放锁定 } else { echo "couldn't lock the file !"; }//开源软件:phpfensi.com fclose($fp); ?> flock() 不能用于 nfs 以及其它一些网络文件系统,详细资料查看自己操作系统的文档,在部分操作系统中 flock() 以进程级实现,当用一个多线程服务器 api,比如 isapi时,可能不可以依靠 flock() 来保护文件,因为运行于同一服务器实例中其它并行线程的 php 脚本可以对该文件进行处理 (编辑:上饶站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |