PHP code example of treptowkolleg / orm

1. Go to this page and download the library: Download treptowkolleg/orm 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/ */

    

treptowkolleg / orm example snippets




use TreptowKolleg\ORM\Attribute;

class MyEntity
{
    #[Attribute\Id]
    #[Attribute\AutoGenerated]
    #[Attribute\Column(type: Attribute\Type::Integer)]
    private ?int $id = null
    
    #[Attribute\Column]
    private string $name;
    
    // getter & setter ...
}



use TreptowKolleg\ORM\Attribute;
use TreptowKolleg\ORM\Field;

class MyEntity
{
    // fügt id sowie getter hinzu
    use Field\IdField;
    
    // fügt Vor- und Nachname sowie getter und setter hinzu 
    use Field\PersonField;
    
    // fügt Felder für automatisches Datum/Uhrzeit für Erstellungs- und Update-Feld hinzu
    use Field\CreatedAndUpdatedField;
    
}



$entityManager = new \TreptowKolleg\ORM\Model\EntityManager();
$entityManager->createTableIfNotExists(MyEntity:class);




$entityManager = new \TreptowKolleg\ORM\Model\EntityManager();

$myEntity = new Entity();
$myEntity->setName('John Doe');

// Änderung einreihen
$entityManager->persist($myEntity);

// Alle eingereihten Änderungen auf Datenbank anwenden
$entityManager->flush();




use TreptowKolleg\ORM\Attribute;
use TreptowKolleg\ORM\Model\Repository;

/**
 * @extends Repository<MyEntity>
 */
class MyEntityRepository extends Repository
{
    public function __construct() {
        parent::__construct(MyEntity::class)
    }
    
    // custom find methods ...
}



$repository = new MyEntityRepository();

// Alle Tupel
$objects = $repository->findAll();

// Alle Tupel, die Bedingung erfüllen
$objects = $repository->findBy(['name' => 'John Doe']);

// Alle Tupel, die bestimmte Werte enthalten (unscharfe Suche)
$objects = $repository->findByLike('name' => 'John');

// Ein Tupel, das die Bedingung erfüllt
$objects = $repository->findOneBy(['name' => 'John Doe']);

// Ein Tupel mit unscharfer Suche finden
$objects = $repository->findOneByLike(['name' => 'Doe']);

// Ein Tupel mit id 'x' finden
$objects = $repository->find(23);