En linux muchos procesos utilizan la carpeta /var/locks para bloquear archivos y así evitar que otros procesos modifiquen ficheros cuando estamos en ello. Para estas cosas podemos utilizar el siguiente codigo:
-
/**
-
* @name lockfile
-
* @desc This function allows to lock or unlock a file with $filename lock file
-
* @param string $fileName file and dir where the lockfile will be inserted
-
* @param boolean $lock true, create lockfile, false, delete lockfile
-
*/
-
private static function lockfile($fileName, $lock){
-
if($lock){
-
$k = 0;
-
$k++;
-
If($k >= 30){
-
echo ‘<script>alert(“Contact with your provider because a systemlock has succeded. Code Error: QMLockError”)</script>’;
-
//echo Yii::t(‘zii’,’qm.filelocked.timelimit’);
-
return 1;
-
}
-
}
-
}else{
-
//nothing to do
-
}
-
}else{
-
}
-
return 0;
-
}