1. Go to this page and download the library: Download knplabs/rad-doctrine-event 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/ */
knplabs / rad-doctrine-event example snippets
class AppKernel
{
function registerBundles()
{
$bundles = array(
//...
new Knp\Rad\DoctrineEvent\Bundle\DoctrineEventBundle(),
//...
);
//...
return $bundles;
}
}
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class User
{
//...
}
namespace App\EventListener;
use App\Entity\User;
use Doctrine\ORM\Event\LifecycleEventArgs;
class UserListener
{
public function prePersist(LifecycleEventArgs $args)
{
$entity = $args->getEntity();
if (false === $entity instanceof User) {
return;
}
// Some stuff
}
}
namespace App\EventListener;
use Knp\Rad\DoctrineEvent\Event\DoctrineEvent;
class UserListener
{
public function prePersist(DoctrineEvent $event)
{
$entity = $event->getEntity();
// Some stuff
}
}
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="type", type="string")
* @ORM\DiscriminatorMap({"page" = "App\Entity\Customer"})
*/
class User
{
//...
}
namespace App\Entity;
use App\Entity\User;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
*/
class Customer extends User
{
//...
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.