https://github.com/pfazzi/isbn-doctrine
Allow the use of a pfazzi/isbn ISBN as Doctrine field type.
https://github.com/pfazzi/isbn-doctrine
doctrine identifier isbn php php7
Last synced: about 1 month ago
JSON representation
Allow the use of a pfazzi/isbn ISBN as Doctrine field type.
- Host: GitHub
- URL: https://github.com/pfazzi/isbn-doctrine
- Owner: pfazzi
- Created: 2019-05-13T19:32:40.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-05-13T22:30:52.000Z (almost 6 years ago)
- Last Synced: 2025-01-22T21:21:57.081Z (3 months ago)
- Topics: doctrine, identifier, isbn, php, php7
- Language: PHP
- Homepage:
- Size: 4.88 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# isbn-doctrine
The pfazzi/isbn-doctrine package provides the ability to use pfazzi/isbn as a Doctrine field type.
## Installation
The preferred method of installation is via [Packagist][] and [Composer][]. Run
the following command to install the package and add it as a requirement to
your project's `composer.json`:```bash
composer require pfazzi/isbn-doctrine
```## Examples
### Configuration
To configure Doctrine to use pfazzi/isbn as a field type, you'll need to set up
the following in your bootstrap:``` php
\Doctrine\DBAL\Types\Type::addType('isbn', 'Pfazzi\Isbn\Doctrine\IsbnType');
```
In Symfony:
``` yaml
# app/config/config.yml
doctrine:
dbal:
types:
isbn: Pfazzi\Isbn\Doctrine\IsbnType
```
Then, in your models, you may annotate properties by setting the `@Column`
type to `isbn`. Doctrine will handle the rest.``` php
/**
* @ORM\Entity()
*/
class Book
{
/**
* @ORM\Id()
* @ORM\Column(type="isbn")
*
* @var Isbn
*/
private $isbn;
public function __construct(Isbn $isbn)
{
$this->isbn = $isbn;
}public function getIsbn(): Isbn
{
return $this->isbn;
}
}
```[packagist]: https://packagist.org/packages/ramsey/uuid-doctrine
[composer]: http://getcomposer.org/