ホームページ >バックエンド開発 >PHPチュートリアル >[オリジナル] PHP+ajax で模擬 Win ファイル管理システムを実装 4_PHP チュートリアル
[オリジナル] php+ajax で模擬 Win ファイル管理システムを実装
//このチュートリアルはこのサイトからのオリジナルです。転載する場合は出典を明記してください
作者: www.drise.cn
メール:drise@163.com
QQ:271728967//
上では Deletefile() 関数について説明しましたが、次に Createfolder() 関数について話しましょう
関数 Createfolder($path,$nname){
if(is_dir($path) && is_writable($path)){//ディレクトリか書き込み可能かどうか
if(preg_match("/^w{1,255}$/i",$nname)){//ファイルの正当性を判断します
echo mkdir($path."/".$nname,0777)?'Create Folder success':'Create Folder Fail';//0777は読み書き可能な設定ファイルです
}その他{
echo "フォルダー エラー";
}
}その他{
echo "エラー ファイルを作成できません is_writable または dir ではありません";
}}
この機能の機能はフォルダーの作成を実現することです
Past($path,$nname,$cpath)関数
function Past($currentpath,$currentfilename,$filepote){ //1: ファイルを貼り付ける場所 2: 現在のファイル {folder} の名前 3: ファイル {folder} が存在する物理アドレス見つかりました
$str = substr($currentfilename,-1,1);
if(substr($currentfilename,-1,1)=="|"){
$currentfilename = str_replace("|","",$currentfilename);
$filepote = str_replace("|","",$filepote);
}
if(is_dir($currentpath) && is_writable($currentpath) && is_dir($filepote) && is_writable($filepote)){
//@mkdir($currentpath."/".$currentfilename);
$t=full_copy($filepote,$currentpath."/".$currentfilename)?'t':'f';//以下は、フォルダーを再帰的に読み取る full_copy 関数です
}else if(is_file($filepote) && file_exists($filepote)){
If(file_exists($currentpath.$currentfilename)){ echo ('ファイルが存在します!名前を変更してください!');exit;}
エコーコピー($filepote,$currentpath.$currentfilename)?'成功':'エラー';
} if( $str == "|" && $t='t' ){
deldir($filepote);
}
}
if ( is_dir( $source ) )
@mkdir( $target );
$d = dir( $source );
while ( FALSE !== ( $entry = $d->read() ) )
{
If ( $entry == '.' || $entry == '..' )
{
続けます;
}
$Entry = $source . $entry;
If ( is_dir( $Entry ) )
{
full_copy( $Entry, $target . '/' . $entry );
続けます;
}
copy ( $Entry, $target . '/' . $entry );
}
$d->close();
}else {
copy( $source, $target );
}
}
前の投稿