adt / files
v6.2
2026-03-31 16:27 UTC
Requires
- php: ^8.4
- ext-fileinfo: *
- adt/doctrine-components: ^3.0
- doctrine/orm: ^2.2|^3.0
- nette/utils: ^2.2|^3.0|^4.0
Requires (Dev)
- gedmo/doctrine-extensions: ^3.20
This package is auto-updated.
Last update: 2026-05-31 00:23:17 UTC
README
Installation
$ composer require adt/files
- Create instance of
\ADT\Files\Listeners\FileListener- parameters:$dataDiris path to directory where files will be saved$dataUrlis URL leading to same directory- implementation of
Doctrine\ORM\EntityMangerInterface
- Register
\ADT\Files\Listeners\FileListenerintoDoctrine\Common\EventManger. If you are using kdyby ORM extension, you can do that by added tagkdyby.subscriberlike this:services: - factory: ADT\Files\Listeners\FileListener(%dataFolder%/files, 'files') tags: [kdyby.subscriber] - Create your File entity for example:
use ADT\Files\Entities\IFileEntity; use ADT\Files\Entities\TFileEntity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity() */ class File implements IFileEntity { use TFileEntity; }
Feel free to add any aditional columns you need and dont forget about id/PK/identifier.
Usage
// create instance of entity $file = new File(); // set binary data to entity as variable $file->setTemporaryContent($binaryContentInString, $originalFileName); // or set path to temporary file, for example after receiving submitted form with file input $file->setTemporaryFile($pathToTemporaryFile, $originalFileName); $entityManager->persist($file); $entityManager->flush();