/ / Codeigniter / Comment (1)

CodeIgniter Framework – Uload file lên server với thư viện FTP

Thư viện FTP trong CodeIgniter Framework cho phép chúng ta có thể upload,chỉnh sửa tên,di chuyển hoặc xóa file trên server nào đó 1 cách dễ dàng.Và thư viện này được ứng dụng rất nhiều thực tế.Ví dụ như bạn muốn làm chức năng lưu toàn bộ file ảnh,video,nhạc… của website lên 1 server khác để lưu trữ và quản lý dễ hơn.Thường thì những website mà có lượng file upload lên nhiều hoặc có dung lượng lớn thì người ta có thể lưu trữ trên 1 server khác server chạy code.Hôm nay mình sẽ giới thiệu cho các bạn về thư viện này để chúng ta có thể áp dụng nó vào những ứng dụng thực tế nhé.
– Để làm việc được với thư viện này thì các bạn cần có thông tin của FTP của server lưu trữ file nhé.Cũng giống như với các thư viện khách trong CodeIgniter khi chúng ta muốn sử dụng thư viện nào thì cần load thư viện đó ra:

$this->load->library('ftp');

Sử dụng thư viện FTP trong CodeIgniter

1.Phương thức upload – Upload file lên 1 server khác

– Ví dụ các bạn có 2 server,1 server chạy code (server A) và 1 server để lưu trữ các file trong website (Server B),lúc này các bạn muốn tải các file lên server B thì điều bắt buộc chúng ta cần có thông tin FTP để truy cập vào server này.Và cú pháp sẽ như sau:

$this->load->library('ftp');
$config['hostname'] = 'ftp.example.com';
$config['username'] = 'your-username';
$config['password'] = 'your-password';
$config['debug']    = TRUE;//TRUE cho phép hiển thị lỗi,FALSE không cho phép
$this->ftp->connect($config);
$this->ftp->upload('path_serverA', 'path_serverB');
$this->ftp->close(); 

Mình xin giải thích về các dòng code trên như sau:

  • dòng 1: thực hiện load thư viện ftp
  • dòng 2: Thông tin cấu hình về FTP hostname của server chứa file (server B),ví dụ: ftp.example.com
  • dòng 3: Thông tin cấu hình về FTP username của server chứa file (server B)
  • dòng 4: Thông tin cấu hình về FTP password của server chứa file (server B)
  • dòng 5: Thông tin cấu hình cho phép hiển thị lỗi nếu có,và nó có giá trị TRUE/FALSE (boolean)
  • dòng 6: Thực hiện kết nối tới server B
  • dòng 7: Thực hiện upload file từ server A sang server B thông qua phương thức
    upload,và phương thức này các bạn cần qua tâm tới 2 tham số:

    • path_serverA: đường dẫn của file trên server chạy code (server A)
    • path_serverB: đường dẫn sẽ lưu file trên server B
  • dòng 8: Thực hiện đóng kết nối.

Trong thư viện này còn hỗ trợ rất nhiều phương thức khách nữa,và các phương thức này đều sử dụng các thông tin cấu hình như trên chỉ khác ở dòng 7 là chúng ta sẽ sử dụng phương thức nào để đáp ứng được yêu cầu,mình sẽ giới thiệu cho các bạn thêm 1 vài phương thức quan trọng nữa trong thư viện này

2.Phương thức download- Download file

Ví dụ:

$this->ftp->download('/public_html/photo.jpg', '/local/path/to/photo.jpg');

3.Phương thức rename – đổi tên file

Ví dụ:

// Đổi tên từ photo.jpg sang photo1.jpg
$this->ftp->rename('/public_html/images/photo.jpg', '/public_html/images/photo1.jpg'); 

4.Phương thức move – di chuyển file từ thư mục này tới thư mục khác

Ví dụ:

// Di chuyển file photo.jpg từ thư mục images sang thư mục img
$this->ftp->move('/public_html/images/photo.jpg', '/public_html/img/photo.jpg'); 

5.Phương thức delete_file – Thự hiện xóa file

Ví dụ:

// Xóa file photo.jpg 
$this->ftp->delete_file('/public_html/images/photo.jpg'); 

6.Phương thức delete_dir – Thự hiện xóa thư mục

Ví dụ:

// Xóa thư mục images
$this->ftp->delete_dir('/public_html/images/'); 

Khi thực hiện xóa thư mục nó sẽ xóa toàn bộ các file và thư mục con bên trong,lên khi sử dụng phương thức này các bạn cần cẩn thận nhé.

7.Phương thức list_files – Hiển thị danh sách các file

Ví dụ:

// hiển thị các file bên trong thư mục images
$list = $this->ftp->list_files('/public_html/images/');
print_r($list); 

+ Lúc này phương thức list_files() sẽ trả về giá trị mảng các file trên trong thư mục images
Ngoài ra thư viện này còn cung cấp 1 số phương thức khác,các bạn có thể truy cập vào đây để có thể xem thêm các phương thức khác.
Kết thúc bài học: Qua bài viết này mình đã hướng dẫn cho các bạn sử dụng thư viện FTP trong CodeIgniter Framework và các phương thức quan trọng trong thư viện này.Mong rằng với bài viết này sẽ giúp ích được cho các bạn đang muốn quản lý file trên 1 server khác.



24/09/2014
Written by nobitacnt

Trong bài viết không tránh khỏi những câu từ chưa chính xác,mong nhận được sự góp ý để website hoàn thiện hơn.Nếu thấy bài viết có ích với bạn hãy like và share để ủng hộ nhé :D.

Bài viết chùng chuyên mục

One comment

  1. Quang Huy says:
     /  Reply

    Tìm mãi mới thấy bài này,đang làm tới phần upload ảnh ra riêng 1 server khác,cảm ơn thớt nhé

Gửi bình luận

Giới thiệu

Mình tạo ra blog này với mong muốn chia sẻ và học hỏi kinh nghiệm trong quá trình thiết kế website. Website đang trong quá trình phát triển chân thành cảm ơn mọi sự góp ý của các bạn để làm cho website ngày càng hoàn thiên.

DMCA.com Protection Status
Theo dõi qua Email

Tổng hợp các bài viết về

Hoc php - CodeIgniter Framework - Laravel Framework - PHP va MYSQL