Отображение преобразуется в следующие таблицы SQL (при условии, что обе имеют суррогатный идентификатор, называемый id):
CREATE TABLE User (id INT(10) PRIMARY KEY)
CREATE TABLE Phonenumber (id INT(10) PRIMARY KEY)
CREATE TABLE User_Phonenumber (
user_id INT(10),
phonenumber_id INT(10),
PRIMARY KEY (user_id, phonenumber_id),
UNIQUE(phonenumber_id)
);
Что это означает с точки зрения вашего кода:
$phonenumber = new Phonenumber();
$phonenumber->setNumber("123-4567890");
$user1->addPhonenumber($phonenumber);
$user2->addPhonenumber($phonenumber);
$entityManager->flush();
Это приведет к исключению уникального ограничения: вы не можете добавить один и тот же номер телефона разным пользователям, потому что номера телефонов уникальны (на уровне базы данных).