PHP code example of xaamin / enum
1. Go to this page and download the library: Download xaamin/enum library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
xaamin / enum example snippets
use Xaamin\Enum\Enum;
class InvoiceStatus extends Enum
{
protected $enum = [
'pending' => 'invoice.pending',
'paid' => 'invoice.paid',
'overdue' => 'invoice.overdue',
];
}
class InvoiceStatus extends Enum
{
protected $enum = [
'pending' => 'invoice.pending',
'paid' => 'invoice.paid',
'overdue' => 'invoice.overdue',
];
}
// Static method:
$invoice = InvoiceStatus::pending();
$invoice = InvoiceStatus::paid();
/**
* @method static self pending()
* @method static self paid()
* @method static self overdue()
*/
class InvoiceStatus extends Enum
{
protected $enum = [
'pending' => 'invoice.pending',
'paid' => 'invoice.paid',
'overdue' => 'invoice.overdue',
];
}
/**
* @method static self pending()
* @method static self paid()
* @method static self overdue()
*/
class InvoiceStatus extends Enum
{
protected $enum = [
'pending' => 'invoice.pending',
'paid' => 'invoice.paid',
'overdue' => 'invoice.overdue',
];
}
public function setInvoiceStatus(InvoiceStatus $invoice)
{
$this->invoice = $invoice;
}
// ...
$class->setInvoiceStatus(InvoiceStatus::paid());
$invoice = InvoiceStatus::search('invoice.overdue');
// $invoice is 'overdue'
$invoice = InvoiceStatus::make('paid');
$invoice->equals($invoice);
// return a boolean
$invoice->isPaid();
// return a boolean
InvoiceStatus::isPaid($invoice);
$invoice = InvoiceStatus::search('invoice.pending');
// $invoice is 'pending'