Kể từ khi tôi cài đặt APC cho PHP với PECL tôi nhận được đôi khi các lỗi này: Cannot redeclare class xxx
PHP với APC: lỗi Fatal: Không thể redeclare lớp
xxx thay đổi bất cứ lúc nào. Tôi có thể vô hiệu hóa APC nhưng APC cải thiện hiệu suất tuyệt vời! Có một lỗi đã biết hoặc tôi có thể làm điều gì đó khác để ngăn chặn các lỗi này không? Tôi đang sử dụng Ubuntu 8.04 LTS với PHP 5.2.4.
Edit/Cập nhật (từ bình luận):
tôi sử dụng Zend Framework Autoloader và những lỗi không bao giờ xảy ra trước khi tôi kích hoạt APC. Một vài phút trước, tôi nhận được ví dụ rằng lỗi: Fatal error: require(): Cannot redeclare class zend_db_adapter_abstract in /paths/app/lib/Zend/Db/Select.php on line 27
đọc được thông báo lỗi nói chung. Không bao gồm tệp đã nói hai lần. Sử dụng 'include_once'. Hoặc thất bại, bọc tất cả các định nghĩa trong 'if (! Class_defined (" xxx ")) {' – mario
Ngoài việc chỉ sử dụng include_once, hãy thử và kiến trúc lại ứng dụng để sử dụng tính năng tự động nạp lớp, để PHP sẽ chỉ bao gồm các tệp Khi cần thiết. Đồng thời gắn với những thứ thông thường, như một lớp cho mỗi tệp, v.v. – Rob
ý của bạn là gì với xxx? xxx thực sự là lớp bạn muốn tải? –