PHP Ionic Angularjs Phonegap AJAX Javascript CSS MySQL jQuery Forum

จัดการ Directory สร้าง ลบ เปลี่ยนชื่อ กำหนด permission ผ่าน FTP function ด้วย PHP

04 December 2009 By


PHP Code สำหรับเรียกใช้งาน

<?php         
// ฟังก์ชันการติดกับ server ผ่าน FTP         
function ftpOpen()         
{         
    // กำหนดค่าการติดต่อ FTP          
    $ftp_user_name = 'username'; // userane         
    $ftp_user_pass = 'password'; // password         
    $ftp_server = 'www.example.com'; // server         
    $conn_id = ftp_connect($ftp_server);         
    $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);         
    return $conn_id;         
}      
      
// ฟังก์ชันสำหรับกำหนด permissions         
function ftpChmod($conn_id, $permissions,$parentDir,$nameDir){           
    $fullPath=$parentDir.$nameDir;    
    $isDir=ftp_chdir($conn_id,$fullPath);
    ftp_chdir($conn_id,$parentDir); // ไปที่โฟลเดอร์หลักที่จะใช้งาน   
    if($isDir){    
        if(ftp_site($conn_id, 'CHMOD '.$permissions.' '.$fullPath) !== false){         
            return true;         
        }else{      
            return false;         
        }          
    }           
}     
  
// ฟังก์ชันสำหรับสร้าง Directory หรือ Folder   
function ftpMakeDir($conn_id,$parentDir,$nameDir){          
    $fullPath=$parentDir.$nameDir;    
    $isDir=ftp_chdir($conn_id,$fullPath);
    ftp_chdir($conn_id,$parentDir); // ไปที่โฟลเดอร์หลักที่จะใช้งาน   
    if(!$isDir){   
        if(ftp_mkdir($conn_id,$nameDir)) {    
            return true;   
        }else{   
            return false;    
        }          
    }      
}   
  
// ฟังก์ชันสำหรับลบ Directory หรือ Folder (ลบเฉพาะโฟลเดอร์ทีมีไฟล์ และไม่มีโฟลเดอร์ภายใน)   
function ftpRemoveDir($conn_id,$parentDir,$nameDir){         
    $fullPath=$parentDir.$nameDir;   
    $isDir=ftp_chdir($conn_id,$fullPath);    
    ftp_chdir($conn_id,$parentDir); // ไปที่โฟลเดอร์หลักที่จะใช้งาน   
    if($isDir){   
		$contents = ftp_nlist($conn_id,$fullPath); 
		if(count($contents)>=3){
			ftp_chdir($conn_id,$fullPath);		
			foreach($contents as $key=>$value){
				if(!is_dir(basename($value))){
					ftp_site($conn_id, 'CHMOD 0777 '.$value);
					ftp_delete($conn_id,$value);
				}
			}
			ftp_chdir($conn_id,$parentDir);		
			if(ftp_rmdir($conn_id,$nameDir)) {    
				return true;   
			}else{   
				if(ftp_site($conn_id, 'CHMOD 0777 '.$fullPath)){       
					if(ftp_rmdir($conn_id,$nameDir)) {    
						return true;   
					}else{   
						return false;    
					}   
				}else{   
					return false;    
				}          
			}      	
		}else{
			if(ftp_rmdir($conn_id,$nameDir)) {    
				return true;   
			}else{   
				if(ftp_site($conn_id, 'CHMOD 0777 '.$fullPath)){       
					if(ftp_rmdir($conn_id,$nameDir)) {    
						return true;   
					}else{   
						return false;    
					}   
				}else{   
					return false;    
				}          
			}      		
		}
    }      
}   
  
// ฟังก์ชันสำหรับเปลี่ยนชื่อ Directory หรือ Folder   
function ftpRenameDir($conn_id,$parentDir,$nameDir,$newNameDir){         
    $fullPath=$parentDir.$nameDir;   
    $isDir=ftp_chdir($conn_id,$fullPath);
    ftp_chdir($conn_id,$parentDir);    
    if($isDir){   
        if(ftp_rename($conn_id,$nameDir,$newNameDir)) {    
            return true;   
        }else{   
            if(ftp_site($conn_id, 'CHMOD 0777 '.$fullPath)){       
                if(ftp_rename($conn_id,$nameDir,$newNameDir)) {    
                    return true;   
                }else{   
                    return false;    
                }   
            }else{   
                return false;    
            }          
        }      
    }      
}   
    
// ฟังก์ชันปิดการเชื่อมต่อ Server ผ่าน FTP         
function ftpClose($conn_id){         
    ftp_close($conn_id);         
}         
  
?> 

การใช้งาน

<?php    
$parentDir="/domains/example.com/public_html/demo/"; // Directory หลักสำหรับจัดการ
$nameDir="myfolder"; // ฃื่อ Directory ที่ต้องการสร้าง, กำหนด permissions, ลบ, หรือเปลี่ยนชื่อ
$newNameDir="myNewFolder";  // ชื่อ Directory ใหม่กรณีเปลี่ยนชื่อ Directory

$conn_id = ftpOpen();      // เปิดการเชื่อมต่อผ่าน FTP     
if($conn_id){   
// สร้าง Directory
	ftpMakeDir($conn_id,$parentDir,$nameDir);
	
// กำหนด permission	
//	ftpChmod($conn_id, "0777",$parentDir,$nameDir);    

// ลบ Directory	
//	ftpRemoveDir($conn_id,$parentDir,$nameDir); 

// เปลี่ยนชื่อ Directory	
//	ftpRenameDir($conn_id,$parentDir,$nameDir,$newNameDir);
	
	ftpClose($conn_id);      // ปิดการติดต่อผ่าน FTP     
}   
?>    


Tags:: ftp php permission direcory





URL สำหรับอ้างอิง