/***********************************************************************************/
/*/ /*/
/*/ Program: File System Class(FSC) /*/
/*/ PHP Programer :吴双(James Wu) /*/
/*/ Email: wu-shuang@163.net /*/
/*/ HomePage: http://www.dev-php.com /*/
/*/ Date: 2002-01-24 /*/
/*/ /*/
/***********************************************************************************/
class FSC{
/**************************************************************************/
// 函数名: getfilesource
// 功能: 得到指定文件的内容
// 参数: $file 目标文件
/**************************************************************************/
function getfilesource($file){
if($fp=fopen($file,'r')){
$filesource=fread($fp,filesize($file));
fclose($fp);
return $filesource;
}
else
return false;
}
/**************************************************************************/
// 函数名: writefile
// 功能: 创建新文件,并写入内容,如果指定文件名已存在,那将直接覆盖
// 参数: $file -- 新文件名
// $source 文件内容
/**************************************************************************/
function writefile($file,$source){
if($fp=fopen($file,'w')){
$filesource=fwrite($fp,$source);
fclose($fp);
return $filesource;
}
else
return false;
}
/**************************************************************************/
// 函数名: movefile
// 功能: 移动文件
// 参数: $file -- 待移动的文件名
// $destfile -- 目标文件名
// $overwrite 如果目标文件存在,是否覆盖.默认是覆盖.
// $bak 是否保留原文件 默认是不保留即删除原文件
/**************************************************************************/
function movefile($file,$destfile,$overwrite=1,$bak=0){
if(file_exists($destfile)){
if($overwrite)
unlink($destfile);
else
return false;
}
if($cf=copy($file,$destfile)){
if(!$bak)
return(unlink($file));
}
return($cf);
}
/**************************************************************************/
// 函数名: movedir
// 功能: 这是下一涵数move的附助函数,功能就是移动目录
/**************************************************************************/
function movedir($dir,$destdir,$overwrite=1,$bak=0){
@set_time_limit(600);
if(!file_exists($destdir))
FSC::notfate_any_mkdir($destdir);
if(file_exists($dir)&&(is_dir($dir)))
{
if(substr($dir,-1)!='/')$dir.='/';
if(file_exists($destdir)&&(is_dir($destdir))){
if(substr($destdir,-1)!='/')$destdir.='/';
$h=opendir($dir);
while($file=readdir($h)){
if($file=='.'||$file=='..')
{
continue;
$file="";
}
if(is_dir($dir.$file)){
if(!file_exists($destdir.$file))
FSC::notfate_mkdir($destdir.$file);
else
chmod($destdir.$file,0777);
FSC::movedir($dir.$file,$destdir.$file,$overwrite,$bak);
FSC::delforder($dir.$file);
}
else
{
if(file_exists($destdir.$file)){
if($overwrite)unlink($destdir.$file);
else{
continue;
$file="";
}
}
if(copy($dir.$file,$destdir.$file))
if(!$bak)
if(file_exists($dir.$file)&&is_file($dir.$file))
@unlink($dir.$file);
}
}
}
else
return false;
}
else
return false;
}
/**************************************************************************/
// 函数名: move
// 功能: 移动文件或目录
// 参数: $file -- 源文件/目录
// $path -- 目标路径
// $overwrite -- 如是目标路径中已存在该文件时,是否覆盖移动
// -- 默认值是1, 即覆盖
// $bak -- 是否保留备份(原文件/目录)
/**************************************************************************/
function move($file,$path,$overwrite=1,$bak=0)
{
if(file_exists($file)){
if(is_dir($file)){
if(substr($file,-1)=='/')$dirname=basename(substr($file,0,strlen($file)-1));
else $dirname=basename($file);
if(substr($path,-1)!='/')$path.='/';
if($file!='.'||$file!='..'||$file!='../'||$file!='./')$path.=$dirname;
FSC::movedir($file,$path,$overwrite,$bak);
if(!$bak)FSC::delforder($file);
}
else{
if(file_exists($path)){
if(is_dir($path))chmod($path,0777);
else {
if($overwrite)
@unlink($path);
else
return false;
}
}
else
FSC::notfate_any_mkdir($path);
if(substr($path,-1)!='/')$path.='/';
FSC::movefile($file,$path.basename($file),$overwrite,$bak);
}
}
else
return false;
}
/**************************************************************************/
// 函数名: delforder
// 功能: 删除目录,不管该目录下是否有文件或子目录,全部删除哦,小心别删错了哦!
// 参数: $file -- 源文件/目录
/**************************************************************************/
function delforder($file) {
chmod($file,0777);
if (is_dir($file)) {
$handle = opendir($file);
while($filename = readdir($handle)) {
if ($filename != "." && $filename != "..")
{
FSC::delforder($file."/".$filename);
}
}
closedir($handle);
return(rmdir($file));
}
else {
unlink($file);
}
}
/**************************************************************************/
// 函数名: notfate_mkdir
// 功能: 创建新目录,这是来自php.net的一段代码.弥补mkdir的不足.
// 参数: $dir -- 目录名
/**************************************************************************/
function notfate_mkdir($dir,$mode=0777){
$u=umask(0);
$r=mkdir($dir,$mode);
umask($u);
return $r;
}
/**************************************************************************/
// 函数名: notfate_any_mkdir
// 功能: 创建新目录,与上面的notfate_mkdir有点不同,因为它多了一个any,即可以创建多级目录
// 如:notfate_any_mkdir("abc/abc/abc/abc/abc")
// 参数: $dirs -- 目录名
/**************************************************************************/
function notfate_any_mkdir($dirs,$mode=0777)
{
if(!strrpos($dirs,'/'))
{
return(FSC::notfate_mkdir($dirs,$mode));
}else
{
$forder=explode('/',$dirs);
$f='';
for($n=0;$n
if($forder[$n]=='') continue;
$f.=((($n==0)&&($forder[$n]''))?(''):('/')).$forder[$n];
if(file_exists($f)){
chmod($f,0777);
continue;
}
else
{
if(FSC::notfate_mkdir($f,$mode)) continue;
else
return false;
}
}
return true;
}
}
/*********************************************************************************/
/*/ End Class FSC /*/
/*********************************************************************************/
}
?>

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

Zend Studio 13.0.1
Powerful PHP integrated development environment

SublimeText3 Chinese version
Chinese version, very easy to use

Dreamweaver Mac version
Visual web development tools
