在 PHP/Symfony 中匹配 2 个用户函数

所以我有这个学校项目,我建立了一个用户可以与其他用户匹配的网站,如果他们都匹配,就会发生一些事情。从技术上讲,我想做的是在我的“idCoach”中添加用户,如果我添加的用户已经在他的“idCoach”中添加了我,那么现在应用一个简单的 echo()。这是我现在尝试做的。


 /**

 * @Route("/user/match/{id}", name="match")

 */

public function match(ObjectManager $om, User $user)

{

    $currentUser = $this->getUser();

    $currentId = $currentUser->getId();

    $idCoach = $user->getIdCoach();


    if(in_array($currentId, $idCoach) {

       echo('bloup');

    } else {

       $currentUser->addIdCoach($user);

      }


    $om->persist($currentUser);

    $om->flush();

    dd($currentUser);


    return $this->render('profile/index.html.twig', [

        'oneuser' => $user,

    ]);

}

它不起作用,因为它告诉我 in_array 函数期望第二个参数是一个数组,显然我提供了一个对象而不是数组,所以我没有解决方案。这是我的用户实体。


守候你守候我
浏览 122回答 1
1回答

jeck猫

您的方法getIdCoach返回一个Collection(更准确地说是一个ArrayCollection)。在这个接口中,你有一个方法toArray(),你应该使用一个数组来传递in_array方法。
打开App,查看更多内容
随时随地看视频慕课网APP