Tôi đang cố triển khai tác vụ bằng cách sử dụng vỏ bánh bao cho ứng dụng của mình. Nhiệm vụ liên quan đến việc chạy một quá trình chạy dài (do đó cần phải sử dụng trình bao).sử dụng các thành phần trong Cakephp 2+ Shell
Chức năng đòi hỏi tôi phải sử dụng một chức năng bên trong một phần gọi là CommonComponent
Đáng tiếc là bất cứ khi nào tôi cố gắng để bao gồm các thành phần i nhận được lỗi PHP Fatal error sau: Class 'Component' không tìm thấy trong thư mục/var/www /nginx-test/app/Controller/Component/CommonComponent.php
đây là lớp CronShell đang được gọi là
class CronShell extends AppShell {
public function main() {
$this->out('Hello world.');
// $this->out(phpinfo());
}
public function test()
{
$this->out('Before Import');
App::import('Component', 'Common');
$this->out('Import complete');
// $this->Common=ClassRegistry::init('CommonComponent');
$this->Common =new CommonComponent();
$this->out('Initialization complete');
$this->Common->testCron();
$this->out('FunctionCall complete');
//$this->Common->saveCacheEntry("name","value");
}
}
lớp CommonComponent được lưu giữ như ứng dụng/Controller/Compon ent/CommonComponent.php và như sau
class CommonComponent extends Component
{
function testCron()
{
$this->out('Hello world from Component.');
}
}
Bất kỳ ý tưởng nào?
Cân nhắc cập nhật câu trả lời được chấp nhận? –