Download the PHP package symandy/resource without Composer
On this page you can find all versions of the php package symandy/resource. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download symandy/resource
More information about symandy/resource
Files in symandy/resource
Package resource
Short Description Set of reusable resource interfaces and traits
License MIT
Informations about the package resource
Symandy Resource Components
This package is a set of reusable components and contains interfaces and traits that could be used in any PHP project. It was mainly designed to be used for Symfony entities.
This package design was strongly inspired by Sylius Resource Bundle
Installation
Components
The components are stored in Symandy\Component\Resource\Model
namespace.
Each interface have a corresponding trait and contains one or several attributes :
Name (trait + interface) | Property | Methods |
---|---|---|
Resource | $id | getId() |
Creatable | $createdAt | getCreatedAt() setCreatedAt(?\DateTimeInterface) create() |
Updatable | $updatedAt | getUpdatedAt() setUpdatedAt(?\DateTimeInterface) update() |
Timestampable (extends Creatable & Updatable) |
- | - |
Archivable | $archivedAt | getArchivedAt() setArchivedAt(?\DateTimeInterface) archive() restore() |
Toggleable | $enabled | isEnabled() setEnabled(bool) enable() disable() |
CodeAware | $code | getCode() setCode(?string) |
SlugAware | $slug | getSlug() setSlug(?string) |
Versioned | $version | getVersion() setVersion(?int) |
Startable | $startsAt | getStartsAt() setStartsAt(?\DateTimeInterface) |
Endable | $endsAt | getEndsAt() setEndsAt(?\DateTimeInterface) |
PeriodAware (extends Startable & Endable) |
- | - |
Usage
Resource creation
The best way to use these components is to create a class and an interface for each resource.
It is also possible to create only the class and add the corresponding traits.