ਕੋਰਸ ਸਿਫਾਰਸ਼:
PHP flock() ਫੰਕਸ਼ਨ
ਵਿਆਖਿਆ ਅਤੇ ਵਰਤੋਂ
flock() ਫੰਕਸ਼ਨ ਫਾਈਲ ਨੂੰ ਲੱਕੜੀ ਲਗਾਉਂਦਾ ਜਾਂ ਰਿਲੀਜ਼ ਕਰਦਾ ਹੈ。
ਸਫਲ ਹੋਣ ਤਾਂ true ਵਾਪਸ ਦਿੰਦਾ ਹੈ।ਅਸਫਲ ਹੋਣ ਤਾਂ false ਵਾਪਸ ਦਿੰਦਾ ਹੈ।
flock(file,lock,ਬਲਾਕ)
ਪੈਰਾਮੀਟਰ | ਵਰਣਨ |
---|---|
file | ਲਾਜ਼ਮੀ।ਨਿਰਧਾਰਿਤ ਕਰਦਾ ਹੈ ਕਿ ਕਿਸ ਫਾਈਲ ਨੂੰ ਲੱਕੜੀ ਲਗਾਉਣਾ ਜਾਂ ਰਿਲੀਜ਼ ਕਰਨਾ ਹੈ। |
lock | ਲਾਜ਼ਮੀ।ਨਿਰਧਾਰਿਤ ਕਰਦਾ ਹੈ ਕਿ ਕਿਸ ਤਰ੍ਹਾਂ ਦਾ ਲੱਕੜੀ ਵਰਤਣਾ ਹੈ। |
ਬਲਾਕ | ਚੋਣਯੋਗ।ਜੇਕਰ 1 ਜਾਂ true ਮੁੱਲ ਨੂੰ ਸੈਟ ਕੀਤਾ ਗਿਆ ਹੈ ਤਾਂ ਲੱਕੜੀ ਕਰਨ ਦੇ ਸਮੇਂ ਹੋਰ ਪ੍ਰੋਸੈਸਾਂ ਨੂੰ ਰੋਕਦਾ ਹੈ। |
说明
flock() 操作的 file 必须是一个已经打开的文件指针。
lock 参数可以是以下值之一:
- 要取得共享锁定(读取的程序),将 lock 设为 LOCK_SH(PHP 4.0.1 以前的版本设置为 1)。
- 要取得独占锁定(写入的程序),将 lock 设为 LOCK_EX(PHP 4.0.1 以前的版本中设置为 2)。
- 要释放锁定(无论共享或独占),将 lock 设为 LOCK_UN(PHP 4.0.1 以前的版本中设置为 3)。
- 如果不希望 flock() 在锁定时堵塞,则给 lock 加上 LOCK_NB(PHP 4.0.1 以前的版本中设置为 4)。
提示和注释
提示:可以通过 fclose() 来释放锁定操作,代码执行完毕时也会自动调用。
注释:由于 flock() 需要一个文件指针, 因此可能不得不用一个特殊的锁定文件来保护打算通过写模式打开的文件的访问(在 fopen() 函数中加入 "w" 或 "w+")。
مثال
<?php $file = fopen("test.txt","w+"); // exclusive locking if (flock($file,LOCK_EX)) { fwrite($file,"Write something"); // release lock flock($file,LOCK_UN); } else { echo "Error locking file!"; } fclose($file); ?>