PHP Code สำหรับเรียกใช้งาน
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 | <?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 ); } ?> |
การใช้งาน
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?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 } ?> |