Tôi đang vật lộn với các không gian tên trong khung công tác Zend (ít nhất tôi nghĩ đó là vấn đề không gian tên).Không tìm thấy lớp PHPExcel trong Zend Autoloader
Tôi muốn tích hợp PHPExcel vào dự án Zend của mình. cấu trúc tập tin có liên quan như sau:
/
-library
-ABCD
-PHPExcel
-Zend
-ZendX
-PHPExcel.php
lớp Tuỳ chỉnh hoạt động tốt, sau
Zend_Loader_Autoloader::getInstance()->registerNamespace('ABCD_');
trong bootstrap. Ngoài ra, những lớp học này đều được đặt tên là ABCD_blahdeblah.
Tuy nhiên, việc đăng kýNamespace ('PHPExcel_') không giúp Zend tìm các lớp thích hợp. Khi tôi thử
$sheet = new PHPExcel;
trong bộ điều khiển, tôi gặp lỗi "Không tìm thấy lớp". Tôi đoán rằng điều này là do các lớp trong PHPExcel không được đặt tên với tiền tố không gian tên, hoặc bởi vì tệp PHPExcel.php chính nằm bên ngoài vùng tên mà tôi vừa khai báo. Nhưng cấu trúc PHPExcel yêu cầu nó nằm trong thư mục cha của phần còn lại của các tệp class/font/etc.
Mọi con trỏ sẽ được đánh giá cao.
Xin cảm ơn trước.
PHPExcel có sử dụng các lớp khác không? Không thể đổi tên lớp thành 'My_PHPExcel' hoặc' App_PHPExcel' và đặt mọi thứ vào thư mục tương ứng? – bububaba
Nó sử dụng các lớp khác, bằng thuyền. Nó sẽ là một công việc tái cấu trúc. Hiện tại, tôi chỉ sử dụng "include_once" trong bộ điều khiển; nó không lý tưởng, nhưng làm việc. – yycroman