PHP Streams函数

PHP stream_supports_lock() 函数通过 flock() 函数。

语法

stream_supports_lock(stream) 

参数

stream 必填。 指定要检查的文件指针。

返回值

成功时返回 true,失败时返回 false。

示例:stream_supports_lock() 示例

假设我们在当前工作目录中有一个名为 test.txt 的文件。在下面的示例中,stream_supports_lock() 函数用于检查与此文件关联的流是否支持锁定。

<?php
//以r+模式打开文件
$fp = fopen("test.txt", "r+");

//检查流是否支持锁定
if(stream_supports_lock($fp)) {
  
  //获取独占锁
  if (flock($fp, LOCK_EX)) {
    //截断文件
    ftruncate($fp, 0);
    
    //向其中写入一些内容
    fwrite($fp, "stream_supports_lock() function example\n");

    //释放锁之前刷新输出
    fflush($fp); 

    //释放锁
    flock($fp, LOCK_UN);    
  } else {
    echo "Error locking file!";
  }

  //关闭文件
  fclose($fp);

  //显示文件内容
  echo file_get_contents("test.txt")."\n";
}
?> 

上述代码的输出将是:

stream_supports_lock() function example