title: Doctrine: many-to-many get removed associated object inside an event listener
body: <p>I have many to many association like this</p>
  
  <pre><code>Entity Car
  {
     /**
       * @var \Doctrine\Common\Collections\Collection
       *
       * @ORM\ManyToMany(targetEntity="User", inversedBy="cars", fetch="EXTRA_LAZY")
       * @ORM\JoinTable(
       *  name="cars_users",
       *  joinColumns={
       *      @ORM\JoinColumn(name="car_id", referencedColumnName="id")
       *  },
       *  inverseJoinColumns={
       *      @ORM\JoinColumn(name="user_id", referencedColumnName="id")
       *  }
       * )
       */
      protected $users; 
  
      /**
       * @param $user
        */
      public function removeUser(User $user)
      {
          if (!$this-&gt;users-&gt;contains($user)) {
              return;
          }
  
          $this-&gt;users-&gt;removeElement($user);
          $user-&gt;removeCar($this);
  
          return $this;
      }
  }
  
  Entity User 
  {
  /**
       * @var \Doctrine\Common\Collections\Collection
       *
       * @ORM\ManyToMany(targetEntity="Car", mappedBy="users")
       */
      protected $cars;
  }
  </code></pre>
  
  <p>in my controller i have </p>
  
  <pre><code>$carA = getRandomCar();
  $userB = getAUserThatBelongToCarA();
  
  //remove association between Car A and User B
  $carA-&gt;removesUser($userB);
  doctrineUpdateCar($carA);
  </code></pre>
  
  <p>I have a Doctrine Listener <code>CarListener</code> i'm trying to find out if a <code>User</code> has been removed inside that listener and tell which <code>User</code> is that.</p>
  
  <p>i tried <code>preUpdate</code> <code>postUpdate</code> <code>postFlush</code> but couldn't figure out a way to get <code>$userB</code> object inside the <code>CarListener</code> </p>