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

Bookmark and Share

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     
}   
?>    




บทความในหมวดที่่น่าสนใจ อื่นๆ PHP Learning

07 Jul 10 เทคนิค php ดึงข้อมูล comment จาก facebook มาใช้งาน อ่าน 478 13 Jul 10 วิธี load xml ไฟล์ และ แบ่งหน้า ด้วย php อย่างง่าย อ่าน 437 09 Jul 10 เพิ่มความเร็ว ให้กับการ cache ด้วย jquery ajax และ php cache class อ่าน 431 30 Oct 09 ฟังก์ชัน PHP แปลงตัวเลขอาราบิก เป็น ตัวเลขไทย อย่างง่าย อ่าน 428 10 Feb 10 ประยุกต์ สร้าง FTP Function สำหรับการจัดการไฟล์ผ่าน FTP Protocal อ่าน 337 02 Mar 10 ประยุกต์ แปลเนื้อหา ในเว็บไซต์ด้วย google translater api สำหรับ php อ่าน 329 19 Jul 10 การนำ ระบบสมาชิก ของ facebook มาประยุกต์ใช้ อ่าน 260 26 Mar 10 ความแตกต่าง ระหว่าง ฟังก์ชัน strstr กับ strrchr และ การประยุกต์ ใช้งาน อ่าน 151 08 Jun 10 ป้องกัน spam ด้วย captcha คำถาม ทางคณิตศาสตร์ อย่างง่าย อ่าน 137 17 Jun 10 สร้างฟังก์ชัน ตรวจสอบ การเข้าเว็บไซต์ ผ่านมือถือ ด้วย php อ่าน 133 09 May 10 ดึงค่า ข้อมูล จาก xml ไฟล์ มากำหนดเป็นตัวแปร array ด้วย php อ่าน 131 28 May 10 แสดง การแจ้งเตือน ให้เปิด หรือ บันทึกไฟล์ที่ดาวน์โหลด ด้วย php อ่าน 126
จำนวนผู้เยี่ยมชม 157929 คน 2010 © Copyright ninenik.com. All rights reserved.