PHP, Laravel 6.0: я не могу написать работающую статическую функцию или переменную для нумерации моих документов с приращением. Каждый раз, когда я создаю документ, он должен устанавливать его номер (Документ № 1, № 2, № 3 ... и т. Д.)
Я проверял и пробовал подобные вопросы в StackOverflow, но они не работали.
У меня есть класс Observer, который должен обрабатывать событие «создания» и использовать эту функцию для установки нового номера. Вот мои попытки:
class DocumentObserver
{
/**
* Found this one on StackOverflow but it didn't work
*/
public function currentNum()
{
static $num = 6;
$num++;
return $num;
}
/**
* Tried to use a property but it didn't work as well
*/
public static $currentNumber = 0;
/**
* Set number to the document
*/
public function setNumber(Document $document)
{
//set format of document number (XX00000001)
$document->number = "IQR" . sprintf('%06d', self::currentNum());
}
/**
* Handle the rent "creating" event.
*
* @param \App\Models\Document $document
* @return void
*/
public function creating(Document $document)
{
$this->setNumber($document);
}
}
Я был бы рад, если бы вы помогли мне решить эту проблему. Любые дополнительные советы в этом случае будут очень полезны, так как я новичок в PHP и Laravel.