首頁  >  文章  >  php教程  >  一道php面试题不懂,望各位网友指点指点

一道php面试题不懂,望各位网友指点指点

PHP中文网
PHP中文网原創
2016-05-25 16:59:061519瀏覽

一道php面试题不懂,望各位网友指点指点

function write_file($filename, $content)
{
$lock = $filename . '.lck';
$write_length = 0;
while(true) {
if( file_exists($lock) ) {
usleep(100);
} else {
touch($lock);
$write_length = file_put_contents($filename, $content, FILE_APPEND);
break;
}
}
if( file_exists($lock) ) {
unlink($lock);
}
return $write_length;
}

我测试了下这段代码可以实现,多进程同时写入写入文件
但是我不明白为什么这里的unlink($lock)没有把这个对应的文件删除呢?
而如果把unlink($lock)单独拿出来是可以删除$lock的,所以应该不是没权限的原因
哪位高手知道一下小弟,感激不尽

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn