PHP FTP là gì?

Ghi chú. Bài đăng này đã hơn hai năm tuổi và vì vậy thông tin ở đây có thể đã lỗi thời. Nếu bạn phát hiện ra điều gì đó, vui lòng để lại nhận xét và chúng tôi sẽ cố gắng khắc phục

Ngày 11 tháng 9 năm 2008 - Thời gian đọc 4 phút

Các chức năng kết nối FTP đã được tích hợp vào PHP kể từ phiên bản 4 và giúp truyền tệp qua FTP rất dễ dàng

Chức năng chính liên quan được gọi là ftp_connect() lấy máy chủ FTP làm tham số và cố gắng kết nối với nó. Cổng và giới hạn thời gian chờ cũng có thể được thêm vào chức năng nếu cần

Khi kết nối đã được thực hiện thì chức năng ftp_login() được sử dụng để thử đăng nhập. Hàm này trả về true nếu thành công và false nếu thất bại. Đoạn mã sau sẽ cố gắng kết nối và đăng nhập vào máy chủ FTP, nếu bất kỳ bước nào không thành công thì mã sẽ in ra một thông báo cho biết như vậy

$host= 'ftp.example.com';
$user = 'notarealusername';
$password = 'notarealpassword';
$ftpConn = ftp_connect($host);
$login = ftp_login($ftpConn,$user,$password);
// check connection
if ((!$ftpConn) || (!$login)) {
 echo 'FTP connection has failed! Attempted to connect to '. $host. ' for user '.$user.'.';
} else{
 echo 'FTP connection was a success.';
 $directory = ftp_nlist($ftpConn,'');
 echo '
'.print_r($directory, true).'
'; } ftp_close($ftpConn);

Hàm ftp_close() lấy mã định danh tài nguyên và đóng nó. Đây là những gì được in ra nếu mã không thành công

FTP connection has failed! Attempted to connect to ftp.example.com for user notarealusername.

Nếu kết nối thành công thì tập lệnh sẽ cố truy xuất nội dung của thư mục gốc, việc này được thực hiện bằng hàm ftp_nlist(). Đây là một ví dụ điển hình về những gì có thể tìm thấy nếu mã kết nối thành công với máy chủ FTP

FTP connection was a success.
Array
(
 [0] => cgi-bin
 [1] => logfiles
 [2] => html
)

Có rất nhiều chức năng FTP khác nhau có sẵn, bao gồm những điều chính mà bất kỳ chương trình FTP nào cũng có thể thực hiện được. Những cái chính bạn có thể sử dụng là ftp_get() để tải xuống tệp, ftp_put() để tải tệp lên và ftp_nlist() để xem nội dung của thư mục. Ngoài ra còn có một chức năng gọi là ftp_chmod() cho phép bạn đặt quyền của một thư mục trên máy chủ FTP của mình

thành công

ftp

PHP

Phil Norton

Được viết bởi. Philip Norton

Phil là người sáng lập và quản trị viên của #. viết mã và là một chuyên gia CNTT làm việc ở Tây Bắc Vương quốc Anh. Tốt nghiệp năm 2003 tại Đại học Aberystwyth với bằng Thạc sĩ Khoa học Máy tính Phil trước đây đã từng làm quản trị viên cơ sở dữ liệu, trên bàn trợ giúp CNTT, huấn luyện viên hệ thống, kiến ​​trúc web, tư vấn khả năng sử dụng, blogger và chuyên gia SEO. Phil có nhiều kinh nghiệm xây dựng và duy trì các trang web PHP cũng như làm việc với các công nghệ liên quan như JavaScript, HTML, CSS, XML, Flex, Apache, MySQL và Linux

Bạn muốn biết thêm?

Hãy để chúng tôi giúp. Thuê chúng tôi để cung cấp dịch vụ đào tạo, tư vấn, xử lý sự cố và hơn thế nữa

hỗ trợ chúng tôi

Hãy ủng hộ chúng tôi và cho phép chúng tôi tiếp tục viết bài

PatreonTrở thành người bảo trợ

Buy Me A CoffeeMua cho tôi một ly cà phê

Bình luận

Xin chào, Cảm ơn vì mã hữu ích này

Tôi muốn hỏi về mã để xem các tệp trong thư mục gốc đó

Thanks,

Đăng bởi Anonymous vào Thứ Ba, 08/03/2011 - 07. 51

Cảnh báo. ftp_login() [chức năng. ftp-đăng nhập]. Xác thực đăng nhập không thành công trong /home/demorct/public_html/nitish/ftp/test. php trên dòng 13 tôi viết mã chính xác như bạn đã cung cấp nhưng vẫn có cảnh báo này

Đăng bởi nitish vào Thứ Sáu, 26/12/2014 - 12. 05

Tôi nghĩ manh mối của lỗi này nằm trong cụm từ "Xác thực đăng nhập không thành công". Có lẽ máy chủ FTP của bạn có tên người dùng và mật khẩu khác?

Tên

Philip Norton

Gửi bởi philipnorton42 vào Thứ Sáu, 26/12/2014 - 12. 09

$directory đó là gì? Làm ơn cho tôi biết

Đăng bởi sonali vào Thứ năm, 26/02/2015 - 10. 52

Biến $directory sẽ là một mảng tên tệp từ thư mục được chỉ định nếu thành công hoặc FALSE nếu có lỗi

Tên

Philip Norton

Gửi bởi philipnorton42 vào Thứ năm, 26/02/2015 - 10. 57

Cảnh báo. ftp_connect() [chức năng. kết nối ftp]. php_network_getaddresses. getaddrinfo không thành công. Không có máy chủ như vậy được biết đến. Cảnh báo. ftp_login() dự kiến ​​tham số 1 là tài nguyên, kết nối FTP không thành công. Đã cố kết nối với ftp. ví dụ. com cho người dùng XXXXXXXXX. tôi nhận được loại cảnh báo này trong kịch bản của bạn. bạn có thể cho tôi gợi ý để giải quyết vấn đề này. cảm ơn trước

Đăng bởi sandip vào Thứ Sáu, 10/04/2015 - 12. 05

Có vẻ như địa chỉ FTP của bạn không hợp lệ

Tên

Philip Norton

Gửi bởi philipnorton42 vào Thứ Sáu, 04/10/2015 - 12. 39

xin chào, tôi đã nhận được thành công từ ftp_connect và chức năng đăng nhập nhưng tôi không thể thay đổi thư mục hoặc tải lên bất kỳ tệp nào trên ftp. Nó báo lỗi cho tôi là ftp_chdir(). Không thể thay đổi thư mục và ftp_put(). Không thể tạo tệp tương ứng. Xin hãy giúp tôi về điều này càng sớm càng tốt

Đăng bởi snehal vào Thứ Tư, 05/04/2017 - 13. 01

Hướng dẫn tuyệt vời, cảm ơn, cũng có một tập lệnh FTP PHP tuyệt vời khác mà bạn có thể sử dụng để tải lên và quản lý tệp trên máy chủ bằng bất kỳ tài khoản lưu trữ nào từ Hostgator hoặc Bluehost hoặc PlotHost, Tập lệnh PHP này có sẵn trên Github và SorceForge bằng cách tìm kiếm SabroCMS

FTP dùng để làm gì?

FTP được sử dụng để truyền tệp giữa hệ thống này sang hệ thống khác và nó có một số trường hợp sử dụng phổ biến, bao gồm các trường hợp sau. Sao lưu. FTP có thể được sử dụng bởi các dịch vụ sao lưu hoặc người dùng cá nhân để sao lưu dữ liệu từ một vị trí đến máy chủ sao lưu an toàn đang chạy các dịch vụ FTP.

Làm cách nào để bật FTP trong PHP?

Để sử dụng các chức năng FTP với cấu hình PHP của bạn, bạn nên thêm tùy chọn --enable-ftp khi cài đặt PHP . Trên Windows, tiện ích mở rộng này luôn được tạo dưới dạng tiện ích mở rộng được chia sẻ và do đó phải được bật trong php. ban đầu.

Giới thiệu FTP và SMTP trong PHP là gì?

FTP được sử dụng để tải xuống tệp, trong khi SMTP được sử dụng để gửi email . SMTP cho phép thư được chuyển giữa người gửi và người nhận trên cùng một máy tính hoặc các máy tính khác nhau. Mặt khác, FTP chia máy khách và máy chủ thành dữ liệu và điều khiển.

Hai loại FTP là gì?

Vì vậy, đối với kết nối, người dùng có thể xin phép bằng cách cung cấp thông tin đăng nhập cho máy chủ FTP hoặc có thể sử dụng FTP ẩn danh. Khi kết nối FTP được thiết lập, có hai loại kênh giao tiếp cũng được thiết lập và chúng được gọi là kênh lệnh và kênh dữ liệu