Làm cách nào để thay đổi PHP 5 thành PHP 7?

Là người dùng ứng dụng PHP, bạn có thể biết rằng phiên bản ổn định mới nhất của PHP là 5. 6. PHP 6 là phiên bản thử nghiệm trung gian, vì vậy nếu bạn muốn cập nhật các ứng dụng của mình, bạn nên chuyển sang PHP 7

Hướng dẫn cách thực hiện này giải thích các tính năng mới của PHP 7 và lợi ích của chúng, những tính năng nào không được dùng trong phiên bản mới này và cách di chuyển ứng dụng PHP của bạn - sử dụng phiên bản AWS Lightsail LAMP làm ví dụ - sang phiên bản PHP mới nhất. Tiếp tục đọc để hưởng lợi từ tất cả các tính năng mà PHP 7 cung cấp cho bạn

Tại sao bạn nên chuyển sang PHP 7?. Các tính năng và lợi ích chính

PHP 7 giới thiệu các tính năng mới giúp người dùng tiết kiệm nhiều thời gian viết mã và gỡ lỗi bằng cách thêm các tham số và chức năng mới cũng như bằng cách nâng cấp hầu hết các tính năng hiện có. Tìm phần tóm tắt bên dưới với các tính năng mới chính mà bạn sẽ tìm thấy khi chuyển sang PHP 7. Để có giải thích chi tiết về tất cả các tham số, lớp và chức năng được thêm vào trong phiên bản mới này, hãy xem tài liệu chính thức của PHP

  • Cải thiện hiệu suất

PHP 7 hiện sử dụng một mô hình công cụ mới có tên là PHP-NG [Thế hệ mới] giúp tăng gấp đôi hiệu suất và tối ưu hóa việc sử dụng bộ nhớ của nó

  • Hỗ trợ khai báo loại trả lại

Tính năng mới này làm cho mã mạnh mẽ và chính xác hơn vì người dùng có thể chỉ định loại giá trị sẽ nhận được cho một hàm hoặc phương thức

  • Hỗ trợ cho các lớp ẩn danh

Chúng có thể được sử dụng thay cho các định nghĩa lớp đầy đủ cho các đối tượng vứt bỏ. Đây là một tính năng phổ biến trong các ngôn ngữ khai báo khác như Java hoặc C#. Nó được sử dụng để giảm thời gian thực hiện

  • Hỗ trợ Cú pháp thoát Codepoint Unicode

Với tính năng mới này, mã hóa dễ dàng hơn vì mọi điểm mã hợp lệ đều được chấp nhận, với số 0 đứng đầu là tùy chọn

  • Bổ sung Filtered unserialize[]

Với chức năng mới này, bạn có thể hủy xác thực các đối tượng trên dữ liệu không đáng tin cậy, mang lại tính bảo mật và độ tin cậy cao hơn cho mã của bạn vì các nhà phát triển hiện có thể kích hoạt các lớp danh sách trắng có thể được hủy xác thực

  • Giới thiệu Tuyên bố sử dụng nhóm

Có thể nhập cả hàm, hằng và lớp từ cùng một không gian tên và nhóm chúng với một tham số sử dụng duy nhất. Điều này giúp tiết kiệm rất nhiều thời gian đánh máy và giúp gỡ lỗi dễ dàng hơn

Các tính năng không dùng nữa trong PHP 7

Phần lớn các tính năng được đưa vào PHP 5. 6 đã được mở rộng, thay thế hoặc thậm chí vẫn còn hiệu lực trong PHP 7. Tuy nhiên, một số trong số chúng hiện đã bị xóa hoặc không dùng nữa, vì vậy điều rất quan trọng là phải chú ý đến chúng để áp dụng phiên bản mới này nhanh hơn. Bạn cũng nên kiểm tra các thay đổi Ngược và không tương thích được liệt kê trong tài liệu chính thức của PHP. Tìm bên dưới những tính năng không được dùng trong phiên bản mới này

  • Trình tạo kiểu PHP 4. Các phương pháp này không được dùng nữa và chúng sẽ bị xóa trong tương lai. Trong trường hợp bạn sử dụng hàm tạo PHP 4 làm hàm tạo duy nhất được định nghĩa trong một lớp, bạn sẽ thấy kết quả tương tự như sau

      "Deprecated: Methods with the same name as their class will not be constructors 
       in a future version of PHP; [...]"
    
  • Các phương thức gọi tĩnh không được khai báo tĩnh không được dùng nữa và sẽ bị xóa trong tương lai

  • tùy chọn muối password_hash[] không được dùng nữa vì lý do bảo mật. Bằng cách đó, việc tạo ra muối tùy chỉnh [và không an toàn] bị ngăn chặn. Chỉ cần chuyển hàm password_has[] để tạo một loại muối bảo mật bằng mật mã

  • tùy chọn ngữ cảnh Capture_session_meta SSL. thay vào đó, hãy sử dụng hàm stream_get_meta_data[] để lấy siêu dữ liệu SSL

  • ldap_sort[] chức năng này không được dùng nữa và kết quả của nó không đáng tin cậy

Giả định và điều kiện tiên quyết

Hướng dẫn này giả định rằng

  • Bạn có một phiên bản Lightsail đang chạy ứng dụng LAMP vận chuyển PHP 5. 6 phiên bản hoặc cũ hơn
  • Phiên bản của bạn đã được chỉ định một IP tĩnh

Hướng dẫn sau giải thích cách di chuyển từ phiên bản AWS Lightsail bằng ứng dụng LAMP đang chạy sử dụng PHP 5. 6 thành phiên bản mới sử dụng phiên bản PHP mới nhất. Bằng cách này, cả ứng dụng và các thành phần của nó sẽ được cập nhật lên phiên bản mới nhất

Bước 1. Sao lưu dữ liệu ứng dụng và cơ sở dữ liệu

Bước đầu tiên bạn nên làm theo trước khi di chuyển cài đặt ứng dụng của mình là sao lưu dữ liệu hiện có. Để làm như vậy, hãy làm theo các hướng dẫn sau

  • Từ bảng điều khiển “Phiên bản” Amazon Lightsail, chọn phiên bản đang chạy mà bạn muốn cập nhật

  • Trên màn hình kết quả, nhấp vào “Kết nối bằng SSH”

  • Sao lưu cơ sở dữ liệu ứng dụng bằng cách tạo tệp kết xuất bằng công cụ mysqldump. Trong ví dụ này, cơ sở dữ liệu được đặt tên là bitnami_app;

      $ mysqldump -u root -p bitnami_app > backup.sql
    
  • Tạo tarball bằng ứng dụng PHP. Hãy nhớ rằng APP là trình giữ chỗ và htdocs/ là đường dẫn thường chứa dữ liệu ứng dụng Bitnami. Thay thế chúng bằng tên và đường dẫn của ứng dụng bạn muốn di chuyển

      $ tar -czvf APP.tar.gz /opt/bitnami/apache2/htdocs/
    
  • Tải tệp tarball xuống máy tính của bạn bằng SFTP

Bước 2. Khởi chạy phiên bản LAMP PHP 7 mới

Để tạo một phiên bản LAMP mới và chuẩn bị cho việc di chuyển dữ liệu cũ, hãy làm theo các hướng dẫn sau

  • Điều hướng đến bảng “Phiên bản” AWS Lightsail và nhấp vào “Tạo phiên bản”

  • Trong phần “Chọn bản thiết kế”, chọn ĐÈN [PHP 7]

  • Nhập tên cho phiên bản mới và nhấp vào “Tạo phiên bản” để tiếp tục

  • Khi phiên bản mới đang chạy, hãy kết nối với máy chủ thông qua SSH bằng cách nhấp vào “Kết nối bằng SSH”

  • Dừng máy chủ Apache bằng cách thực hiện lệnh sau

      $ sudo /opt/bitnami/ctlscript.sh stop apache
    
  • Xóa thư mục /opt/bitnami/apache2/htdocs/

      $ sudo rm -rf /opt/bitnami/apache2/htdocs/    
    

Bước 3. Kiểm tra cấu hình PHP

Để kiểm tra xem phiên bản mới có đang chạy PHP 7 không và các mô-đun PHP đã được bật hay chưa, bạn nên tạo một thử nghiệm đơn giản. Dễ dàng như việc tạo tập lệnh kiểm tra bằng cách sử dụng hàm phpinfo[]. Ngoài ra, bạn có thể kiểm tra các mô-đun đã cài đặt chỉ bằng cách chạy một lệnh duy nhất. Xem hướng dẫn bên dưới

  • Từ bảng “Phiên bản” Amazon Lightsail, chọn LAMP PHP 7

  • Trên màn hình kết quả, nhấp vào “Kết nối bằng SSH”

  • Khi bạn đã kết nối với máy chủ, hãy tạo một tệp có tên phptest. php ở vị trí sau. /opt/bitnami/apache2/htdocs/

  • Viết nội dung sau vào tệp mới

      
    
  • Quay lại giao diện người dùng của Lightsail và sao chép địa chỉ IP của phiên bản của bạn

  • Mở một cửa sổ mới trong trình duyệt và nhập thông tin sau. http. //PUBLIC-IP/phptest. php. Hãy nhớ thay thế trình giữ chỗ PUBLIC-IP bằng địa chỉ IP bạn vừa sao chép ở bước trên. Bạn sẽ thấy một trang tương tự như thế này

  • Để kiểm tra các mô-đun đã cài đặt, hãy quay lại bảng điều khiển máy chủ và thực hiện lệnh bên dưới

      $ /opt/bitnami/php/bin/php -m
    
  • Bạn sẽ thấy một đầu ra tương tự như thế này

Bước 4. Nhập và khôi phục cơ sở dữ liệu cũng như dữ liệu của ứng dụng của bạn vào phiên bản mới

Khi thư mục /opt/bitnami/apache2/htdocs/ của phiên bản mới đã bị xóa, đã đến lúc thay thế nó bằng cơ sở dữ liệu và dữ liệu của ứng dụng của bạn. Do đó, bạn sẽ có một phiên bản với ứng dụng đang chạy phiên bản PHP mới nhất. Làm theo hướng dẫn dưới đây

  • Tải tệp tarball lên phiên bản mới bằng SFTP

  • Giải nén *. tar chứa ứng dụng PHP của bạn bằng cách thực hiện như sau

      $ tar -xzvf APP.tar.gz -C /opt/bitnami/apache2/htdocs/
    
  • Khôi phục cơ sở dữ liệu bằng lệnh bên dưới

    ________số 8_______
  • Khởi động lại máy chủ Apache

      $ sudo /opt/bitnami/ctlscript.sh restart apache
    

QUAN TRỌNG. Sau khi khôi phục ứng dụng của bạn vào phiên bản mới, bạn nên kiểm tra ứng dụng để đảm bảo rằng quá trình di chuyển đã thành công. Bạn cũng nên kiểm tra nhật ký Apache để tìm hiểu xem có tồn tại khả năng tương thích phiên bản nào không

Bước 5. Liên kết lại địa chỉ IP với phiên bản mới

Nếu mọi thứ đều ổn, đã đến lúc liên kết địa chỉ IP của phiên bản cũ với phiên bản mới. Để làm như vậy, bạn cần tách IP tĩnh của phiên bản cũ và gắn nó vào phiên bản mới. Thực hiện theo các bước sau

  • Trên bảng “Phiên bản” của Lightsail, hãy chọn phiên bản LAMP có phiên bản PHP cũ hơn [trong trường hợp này là LAMP_PHP_5]

  • Điều hướng đến phần “Mạng”

      $ mysqldump -u root -p bitnami_app > backup.sql
    
    0
  • Bên dưới IP tĩnh được đính kèm với phiên bản của bạn, bạn sẽ tìm thấy nút “Tách IP tĩnh”. Nhấp vào nó và Xác nhận bằng cách nhấp vào “Có” để bắt đầu quá trình

      $ mysqldump -u root -p bitnami_app > backup.sql
    
    1
  • Quay lại bảng “Phiên bản” của Lightsail, chọn phiên bản LAMP có phiên bản PHP mới hơn [trong trường hợp này là LAMP_PHP_7]

  • Điều hướng đến phần “Mạng”, trong màn hình kết quả, bên dưới địa chỉ IP Công cộng hiện tại của phiên bản, nhấp vào nút “Đính kèm IP tĩnh”

  • Từ danh sách các tài nguyên có sẵn, chọn IP tĩnh bạn muốn gắn vào phiên bản này. Trong trường hợp này, hãy chọn IP tĩnh được gắn vào phiên bản cũ của bạn. Nhấp vào biểu tượng kiểm tra màu xanh lá cây để xác nhận hành động

    Làm cách nào để chuyển đổi PHP 5 sang PHP 7?

    Mã để nâng cấp từ PHP5 lên PHP7 . Ví dụ. error_reporting[E_ALL ^ ​​E_STRICT]; . Tạo một lớp trừu tượng cho các hoạt động cơ sở dữ liệu bằng cách sử dụng tiện ích mở rộng PDO vì PDO hỗ trợ nhiều cơ sở dữ liệu. Set error reporting to E_ALL as below. Eg: error_reporting[E_ALL ^ E_STRICT]; Solve all the errors including notice errors and deprecated errors. Create an abstraction layer for database operations by using PDO extension as PDO supports multiple databases.

    Làm cách nào để có phiên bản PHP 7?

    Kiểm tra phiên bản PHP được cài đặt trên máy chủ Linux và Unix của bạn .
    Mở dấu nhắc đầu cuối và sau đó gõ các lệnh sau
    Đăng nhập vào máy chủ từ xa bằng lệnh ssh. .
    Để kiểm tra phiên bản PHP, hãy chạy. php --version HOẶC php-cgi --version
    Để in phiên bản PHP 7, gõ. php7 --version HOẶC php7-cgi --version

    PHP5 có tương thích với PHP7 không?

    Bạn cần lưu ý rằng phần lớn, PHP 5. Mã x có thể chạy trên PHP 7 . Trong PHP 7 có một số thay đổi không tương thích ngược nên các ứng dụng xây dựng bằng PHP 5.

    Cách nâng cấp PHP 5. 6 đến 7 trong Ubuntu?

    Cài đặt PHP [5. 6, 7. .
    Trước tiên, hãy bắt đầu bằng cách thêm Ondřej Surý PPA để cài đặt các phiên bản PHP khác nhau – PHP 5. 6, PHP7. x và PHP 8. 0 trên hệ thống Ubuntu. .
    Tiếp theo, cập nhật hệ thống như sau. $ sudo apt-get cập nhật
    Bây giờ hãy cài đặt các phiên bản PHP được hỗ trợ khác nhau như sau

Chủ Đề