PHP Ionic Angular Phonegap AJAX Javascript CSS MySQL jQuery Forum


ประยุกต์ สร้าง FTP Function สำหรับการจัดการไฟล์ผ่าน FTP Protocal

10 February 2010 By
ftp php

คำสั่ง การ กำหนด รูปแบบ ตัวอย่าง เทคนิค ลูกเล่น การประยุกต์ การใช้งาน เกี่ยวกับ ftp php



สร้างไฟล์ php สำหรับ ftp function บันทึกเป็น config_ftp.php ไว้เรียกใช้

<?php      
// ฟังก์ชันการติดกับ server ผ่าน FTP      
function ftpOpen(){      
    // กำหนดค่าการติดต่อ FTP       
    $ftp_user_name = 'username'; // userane      
    $ftp_user_pass = 'password'; // password      
    $ftp_server = 'www.yourdomain.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 (ข้อระวัง* หากมีไฟล์ภายใน ระบบจะลบไฟล์ทั้งหมดใน 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;    
            }          
        }      
    }      
}   
    

// ฟังก์ชันสำหรับกำหนด permissions     ไฟล์    
function ftpChmodFile($conn_id, $permissions,$parentDir,$nameDir,$fileName){           
	$fullPath=$parentDir.$nameDir;    
    $fullPathFile=$parentDir.$nameDir."/".$fileName;    
	$isDir=ftp_chdir($conn_id,$fullPath);
    if($isDir){   
        if(ftp_site($conn_id, 'CHMOD '.$permissions.' '.$fullPathFile) !== false){         
            return true;         
        }else{      
            return false;         
        }          
    }           
}     	

// ฟังก์ชันสำหรับเปลี่ยนชื่อ ไฟล์ 
function ftpRenameFile($conn_id,$parentDir,$nameDir,$fileName,$new_fileName){         
    $fullPath=$parentDir.$nameDir;    
	$fullPathFile=$parentDir.$nameDir."/".$fileName;    
	$isDir=ftp_chdir($conn_id,$fullPath);
    if($isDir){   
        if(ftp_rename($conn_id,$fileName,$new_fileName)) {    
            return true;   
        }else{   
            if(ftp_site($conn_id, 'CHMOD 0777 '.$fullPathFile)){       
                if(ftp_rename($conn_id,$fileName,$new_fileName)) {    
                    return true;   
                }else{   
                    return false;    
                }   
            }else{   
                return false;    
            }          
        }      
    }      
}   	

// ฟังก์ชันสำหรับหาขนาดไฟล์
function ftpFileSize($conn_id,$parentDir,$nameDir,$fileName){         
    $fullPath=$parentDir.$nameDir;    
	$fullPathFile=$parentDir.$nameDir."/".$fileName;    
	$isDir=ftp_chdir($conn_id,$fullPath);
    if($isDir){   
        if(ftp_size($conn_id,$fileName)!=-1) {    
            return ftp_size($conn_id,$fileName);
        }else{   
			return  false;
        }      
    }      
}   	
	
// ฟังก์ชันสำหรับหา ว่ามีไฟล์ชื่อนี้หรือไม่
function ftpIsFile($conn_id,$parentDir,$nameDir,$fileName){         
    $fullPath=$parentDir.$nameDir;    
	$fullPathFile=$parentDir.$nameDir."/".$fileName;    
	$isDir=ftp_chdir($conn_id,$fullPath);
    if($isDir){   
        if(ftp_size($conn_id,$fileName)!=-1) {    
            return true;
        }else{   
			return  false;
        }      
    }      
}  	
	
// ฟังก์ชันสำหรับอัพโหลดไฟล์
function ftpUploadFile($conn_id,$parentDir,$nameDir,$fileName,$uploadFile){         
    $fullPath=$parentDir.$nameDir;    
	$fullPathFile=$parentDir.$nameDir."/".$fileName;    
	$isDir=ftp_chdir($conn_id,$fullPath);
    if($isDir){   
		if(ftp_put($conn_id, $fileName,$uploadFile,FTP_ASCII)){
			if(ftp_site($conn_id, 'CHMOD 0777 '.$fullPathFile)){
				return true;
			}else{
				return false;
			}			
		}else{
			return false;
		}
    }      
}   		
	
// ฟังก์ชันสำหรับลบ ไฟล์
function ftpRemoveFile($conn_id,$parentDir,$nameDir,$fileName){         
    $fullPath=$parentDir.$nameDir;    
	$fullPathFile=$parentDir.$nameDir."/".$fileName;    
	$isDir=ftp_chdir($conn_id,$fullPath);
    if($isDir){   
		if(ftp_delete($conn_id,$fileName)){
			return true;
		}else{
           if(ftp_site($conn_id, 'CHMOD 0777 '.$fullPathFile)){       
                if(ftp_delete($conn_id,$fileName)) {    
                    return true;   
                }else{   
                    return false;    
                }   
            }else{   
                return false;    
            }    		
		}
    }      
}   	
	
// ฟังก์ชันปิดการเชื่อมต่อ Server ผ่าน FTP         
function ftpClose($conn_id){         
    ftp_close($conn_id);         
}         
?>      

ตัวอย่างการใช้งาน

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

$conn_id = ftpOpen();      // เปิดการเชื่อมต่อผ่าน FTP     
if($conn_id){   
	// ฟังก์ชันสำหรับกำหนด permissions     
	ftpChmod($conn_id, $permissions,$parentDir,$nameDir);     
	// ตัวอย่าง   ftpChmod($conn_id, "0777",$parentDir,$nameDir);
	
	// ฟังก์ชันสำหรับสร้าง Directory หรือ Folder   
	ftpMakeDir($conn_id,$parentDir,$nameDir);  
	// ตัวอย่าง   ftpMakeDir($conn_id,$parentDir,$nameDir);    
	
	// ฟังก์ชันสำหรับลบ Directory หรือ Folder (ข้อระวัง* หากมีไฟล์ภายใน ระบบจะลบไฟล์ทั้งหมดใน Folder)   
	ftpRemoveDir($conn_id,$parentDir,$nameDir);     
	// ตัวอย่าง  ftpRemoveDir($conn_id,$parentDir,$nameDir);       
	
	// ฟังก์ชันสำหรับเปลี่ยนชื่อ Directory หรือ Folder   
	ftpRenameDir($conn_id,$parentDir,$nameDir,$newNameDir);      
	// ตัวอย่าง  ftpRenameDir($conn_id,$parentDir,$nameDir,$newNameDir);      
	
	// ฟังก์ชันสำหรับเปลี่ยนชื่อ ไฟล์ 
	ftpRenameFile($conn_id,$parentDir,$nameDir,$fileName,$new_fileName);      
	// ตัวอย่าง  ftpRenameFile($conn_id,$parentDir,$nameDir,$fileName,$new_fileName);         
	
	// ฟังก์ชันสำหรับหาขนาดไฟล์
	ftpFileSize($conn_id,$parentDir,$nameDir,$fileName);       
	// ตัวอย่าง  ftpFileSize($conn_id,$parentDir,$nameDir,$fileName);      
	
	// ฟังก์ชันสำหรับหา ว่ามีไฟล์ชื่อนี้หรือไม่
	ftpIsFile($conn_id,$parentDir,$nameDir,$fileName);  
	// ตัวอย่าง  ftpIsFile($conn_id,$parentDir,$nameDir,$fileName);         
	
	// ฟังก์ชันสำหรับอัพโหลดไฟล์
	ftpUploadFile($conn_id,$parentDir,$nameDir,$fileName,$uploadFile);     
	// ตัวอย่าง  ftpUploadFile($conn_id,$parentDir,$nameDir,$_FILES['file']['name'],$_FILES['file']['tmp_name']);        
	
	// ฟังก์ชันสำหรับลบ ไฟล์
	ftpRemoveFile($conn_id,$parentDir,$nameDir,$fileName);      
	// ตัวอย่าง  ftpRemoveFile($conn_id,$parentDir,$nameDir,$fileName);      

	ftpClose($conn_id);      // ปิดการติดต่อผ่าน FTP     
}   
?>   






Tags:: ftp php






อย่าลืมกด Like กด Share เป็นกำลังใจ ในการสร้างบทความใหม่ๆ น่ะครับ


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