PHP file_get_contents đóng kết nối

SFTP là một giao thức tiêu chuẩn và an toàn thông qua đó các bên có thể chuyển và chia sẻ dữ liệu và tệp một cách an toàn. Trong mọi trường hợp, việc tương tác với máy chủ SFTP theo chương trình có thể là một thách thức. Trong bài đăng sau, chúng tôi sẽ xây dựng một ứng dụng khách SFTP dựa trên PHP chính thức, từng bước một, để khi kết thúc hướng dẫn, bạn sẽ có thể tự mình thực hiện tất cả

Yêu cầu

Trước hết, bạn sẽ cần một máy chủ SFTP để kết nối với. Nếu chưa có, bạn có thể nhận điểm cuối SFTP trên SFTP To Go trong chưa đầy 30 giây

PHP không đi kèm với các thư viện SFTP ngay từ đầu, vì vậy chúng tôi sẽ cần cài đặt thư viện ssh2 cần thiết bằng PECL. Thư viện dựa trên libssh2, vì vậy bạn phải đảm bảo rằng nó được cài đặt lần đầu tiên trên máy của bạn. Ví dụ: trên máy Ubuntu, hãy chạy như sau

$ apt-get install libssh2-1-dev
$ pecl install -a ssh2-1.3

Theo phương pháp phát triển đám mây ứng dụng 12 yếu tố, bạn nên xác định rõ ràng các phụ thuộc của ứng dụng, điều này sẽ giúp trình soạn thảo của chúng tôi. tệp json trông như thế này

{
  "require": {
    "ext-ssh2": "*"
  }
}

Bây giờ niềm vui thực sự bắt đầu

Tạo và hủy kết nối SFTP

Chúng tôi sẽ bắt đầu bằng cách tạo một lớp mới gói gọn chức năng cần thiết cho ứng dụng khách SFTP của chúng tôi. Các phương thức công khai mà chúng tôi thêm lần đầu tiên cho phép chúng tôi kết nối với máy chủ bằng xác thực mật khẩu hoặc xác thực khóa và cung cấp phương tiện để ngắt kết nối phiên hiện có

lớp kết nối
. php

Để đưa các phương thức hoàn toàn mới vào sử dụng, chúng ta sẽ thêm một hàm chính khởi tạo lớp của chúng ta và gọi hàm

{
  "require": {
    "ext-ssh2": "*"
  }
}
8 để bắt đầu kết nối, cũng như đóng kết nối bằng hàm
{
  "require": {
    "ext-ssh2": "*"
  }
}
0 ngay sau đó. Chúng tôi sẽ sử dụng biến môi trường
{
  "require": {
    "ext-ssh2": "*"
  }
}
1 để lấy tất cả thông tin cần thiết để kết nối với máy chủ SFTP ở định dạng URI.
{
  "require": {
    "ext-ssh2": "*"
  }
}
2. Trong chức năng chính của chúng tôi, biến được phân tích cú pháp để trích xuất tên người dùng, mật khẩu, máy chủ và cổng tùy chọn

kết nối-chính. php

Liệt kê tập tin

Bây giờ chúng ta đã thiết lập kết nối thành công, chúng ta có thể thêm một chức năng vào lớp của mình và sử dụng nó để liệt kê các tệp trên máy chủ SFTP từ xa. Hàm

{
  "require": {
    "ext-ssh2": "*"
  }
}
3 nhận đối số
{
  "require": {
    "ext-ssh2": "*"
  }
}
4 và trả về một mảng tên tệp, cùng với kích thước và dấu thời gian sửa đổi của chúng. Để gọi hàm, chỉ cần chuyển một đường dẫn [bạn có thể bắt đầu bằng
{
  "require": {
    "ext-ssh2": "*"
  }
}
5 để duyệt qua nội dung thư mục hiện tại] rồi xử lý mảng bạn nhận được

{
  "require": {
    "ext-ssh2": "*"
  }
}
0tệp danh sách. php

Cập nhật dử liệu

Bây giờ là lúc để tải lên một tập tin. Sử dụng hàm

{
  "require": {
    "ext-ssh2": "*"
  }
}
6 và truyền hai đối số. đường dẫn đến tệp cục bộ để tải lên và đường dẫn từ xa đích. Một cuộc gọi chức năng sẽ trông như thế này.
{
  "require": {
    "ext-ssh2": "*"
  }
}
7

{
  "require": {
    "ext-ssh2": "*"
  }
}
3tải lên tập tin. php

Tải tập tin

Cuối cùng nhưng không kém phần quan trọng. Sử dụng chức năng

{
  "require": {
    "ext-ssh2": "*"
  }
}
8 để tải xuống tệp. Truyền đường dẫn đến tệp từ xa và đường dẫn cục bộ trong đó tệp đã tải xuống sẽ được lưu trữ cho chức năng. Bạn sẽ gọi hàm như thế này.
{
  "require": {
    "ext-ssh2": "*"
  }
}
9

{
  "require": {
    "ext-ssh2": "*"
  }
}
6tệp tải xuống. php

SFTP To Go với độ tin cậy và bảo mật tối đa

SFTP To Go cung cấp SFTP/FTPS/S3 được quản lý dưới dạng dịch vụ - độ tin cậy, bảo mật, tính khả dụng tối đa, chỉ với 1 phút thiết lập. Tuyệt vời cho các công ty thuộc mọi quy mô, mọi quy mô

Kiểm tra SFTP To Go

toàn bộ điều

Đó là nó. Nếu bạn muốn chạy toàn bộ chương trình từ đầu đến cuối, hãy sao chép đoạn mã sau và lưu dưới dạng

0

file_get_contents có đóng tệp không?

file_get_contents[] đọc tệp và đóng tệp sau đó . Nó trả về dữ liệu đã đọc hoặc false , vì vậy dù sao thì bạn cũng không có trình xử lý tệp nào để sử dụng với fclose[].

Đầu vào PHP file_get_contents là gì?

file_get_contents[] đọc tệp thành một chuỗi . Hàm này là cách ưa thích để đọc nội dung của tệp thành một chuỗi. Nó sẽ sử dụng các kỹ thuật ánh xạ bộ nhớ, nếu điều này được máy chủ hỗ trợ, để nâng cao hiệu suất.

file_get_contents[] sẽ trả về cái gì?

Giá trị trả về ¶ . Hàm này có thể trả về giá trị Boolean false nhưng cũng có thể trả về giá trị không phải Boolean được đánh giá là false. Vui lòng đọc phần về Booleans để biết thêm thông tin. the read data or false on failure. This function may return Boolean false , but may also return a non-Boolean value which evaluates to false . Please read the section on Booleans for more information.

Sự khác biệt giữa hàm file_get_contents[] và hàm file[] là gì?

file — Đọc toàn bộ nội dung tệp thành một mảng các dòng. file_get_contents — Đọc toàn bộ nội dung tệp thành một chuỗi .

Chủ Đề