peppeocchi / php-cron-scheduler

PHP cron job scheduler
MIT License
808 stars 143 forks source link

Callable supplied as array generates error when being added #94

Closed phinor closed 4 years ago

phinor commented 4 years ago

Environment

PHP 7.2 composer require peppeocchi/php-cron-scheduler:^3.0

How to Reproduce

$scheduler = new \GO\Scheduler()
$scheduler->call(['MyClass', 'staticMethod']);

Expected Behaviour

The method MyClass::staticMethod() is called every minute.

Observed Behaviour

An error is generated: spl_object_hash() expects parameter 1 to be object, array given on line 162 of Job.php

Possible Solutions

Adjust the if-statement from lines 158 to 163 to read:

if (is_string($command)) {
    $this->id = md5($command);
} elseif (is_array($command)) {
    $this->id = md5(serialize($command));
} else {
    /* @var object $command */
    $this->id = spl_object_hash($command);
}