카운터 파일 편난판
<?php
// ...
error_reporting(E_ALL);
// ...
$file_name = 'count.txt';
// ...
if(!file_exists($file_name) ){
echo "<p style='color:red;'>This file does not exist. ($file_name)</p>";
return;
}
// ...
if(!is_writable($file_name) ){
echo "<p style='color:red;'>Please add write permission to file. ($file_name)</p>";
return;
}
// ...
if(!$file = fopen($file_name, 'r+') ){ // rb is Windows only read mode.
echo "<p style='color:red;'>Failed to file open. ($file_name)</p>";
return;
}
// ...
if(!flock($file, LOCK_EX) ){
echo "<p style='color:red;'>Failed to file lock. ($file_name)</p>";
FileClose($file);
return;
}
// ...
$file_size = filesize($file_name);
// ...
if(!$file_size ){
// ...
$count = 0;
}else{
// ...
if(!$count = fread($file, $file_size) ){
echo "<p style='color:red;'>Failed to file read. ($file_name)</p>";
FileClose($file);
return;
}
}
// ...
$count++;
// ...
$count = (string)$count;
// ...
if(!rewind($file) ){
echo "<p style='color:red;'>Failed to file rewind. ($file_name)</p>";
FileClose($file);
return;
}
// ...
if(!fwrite($file, $count) ){
echo "<p style='color:red;'>Failed to file write. ($file_name)</p>";
}
// ...
FileClose($file);
// ...
echo $count;
/** File close process.
*
* @param resource
*/
function FileClose($file){
// ...
fflush($file);
// ...
flock($file, LOCK_UN);
// ...
fclose($file);
}
Reference
이 문제에 관하여(카운터 파일 편난판), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/phpbeginners/articles/f2780aba2b6548텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)