как создать экземпляр переменной, которую вы передали в конструкторе в Laravel Jobs

Я создал защищенный $ companyID; в моем классе работы, то в __construct функция, которую я передал $id но когда я пытаюсь создать экземпляр переменной в моем handler function его null

protected $companyID = NULL;

public function __construct($ID) {
$this->companyID = $ID;
}

Тогда когда создается экземпляр класса?

    $ProcessOutgoingSMS = new ProcessOutgoingSMS();
$ProcessOutgoingSMS->dispatch(3);

1

Решение

Вы не передаете аргумент конструктору, возможно, это источник вашей проблемы.

$ProcessOutgoingSMS = new ProcessOutgoingSMS(2);

В качестве более общего комментария к стилю кода я бы также рекомендовал не иметь переменных с заглавными первыми символами. $id а также $processOutgoingSMS,

0

Другие решения

Вы должны передать 3 в конструктор:

$ProcessOutgoingSMS = new ProcessOutgoingSMS(3);
$ProcessOutgoingSMS->dispatch();

и не

$ProcessOutgoingSMS = new ProcessOutgoingSMS();
$ProcessOutgoingSMS->dispatch(3);
0

Где я создаю экземпляр класса и пытаюсь выполнить инъекцию console / kernel.php

$idobject = (object)['id' => 3];
new ProcessOutgoingSMS($idobject);

затем в классе, который пытается выполнить функциональность сделал вар статической переменной

static $companyID = 0;

теперь конструктор выглядит

public function __construct($company) {
self::$companyID = $company->id;
}

тогда в функции handle () я могу получить доступ к любому введенному значению

dd(self::$companyID);

Спасибо, парни

0
По вопросам рекламы [email protected]