Próbuję wykonać zadanie przy użyciu powłoki cakephp dla mojej aplikacji. Zadanie polega na uruchomieniu długiego procesu (stąd potrzeba użycia powłoki).przy użyciu składników w Cakephp 2+ Shell
Funkcja wymaga mnie użyć funkcji wewnątrz komponentu o nazwie CommonComponent
Niestety, gdy próbuję to komponent pojawia się następujący błąd PHP Fatal error: Class „Element” nie został odnaleziony w katalogu/var/www /nginx-test/app/Controller/Component/CommonComponent.php
Oto Klasa CronShell który jest nazywany
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");
}
}
Klasa CommonComponent jest przechowywana jako app/Controller/COMPON ent/CommonComponent.php i jest następujący:
class CommonComponent extends Component
{
function testCron()
{
$this->out('Hello world from Component.');
}
}
Wszelkie pomysły?
Zastanów się nad aktualizacją zaakceptowanej odpowiedzi? –