2011-08-16 34 views
7

Im trên một công ty lưu trữ sử dụng php 5.2, một số thư viện tôi sử dụng được viết bằng 5.3 và có một số không tương thích giữa mã.php 5.2 mới và sử dụng vấn đề đường dẫn từ khóa

Trước tất cả những gì là sự thay thế cho:

$sample = new \folder1\folder2\class_file($arg1, arg2); 

Cảm ơn trước:

use \folder1\folder2\class_file; 

Thứ hai phương án để là gì.

Trả lời

13

Không gian tên là không tương thích ngược với PHP < 5.3

Bạn sẽ phải:

  • loại bỏ tất cả các trường hợp namespaceuse báo cáo
  • đổi tên lớp học của bạn từ class_file để folder1_folder2_class_file (hoặc tương tự)
  • sử dụng $sample = new folder1_folder2_class_file($arg1, $arg2); để tạo một instanc e
7

Tôi muốn nói điều đó phụ thuộc vào số lượng mã PHP 5.3 và nếu dự án của bạn trị giá hơn 5 Bucks mỗi tháng cho bạn.

Đề xuất chính của tôi là: Thay đổi nhà cung cấp dịch vụ lưu trữ của bạn.

Nếu họ không cung cấp PHP 5.3, một phiên bản PHP phát hành vào ngày 30 tháng sáu năm 2009 (thats hai năm!) Bạn là tốt hơn không chỉ lãng phí thời gian của bạn cố gắng để có được dự án của bạn để chạy đó.

5.3 đủ trưởng thành để sử dụng trong sản xuất và 5.2 đã hết chu kỳ sống của nó (end of support for php 5.2 branch).

Đừng lãng phí thời gian của bạn khi tạo ứng dụng 'cũ' vì một số công ty lưu trữ.

Các vấn đề liên quan