或者在 symfony 上 findOneBy

Or on symfony findOneBy

可以使用 symfony 上的 orm 由一个或另一个提交请求

$user_test = $em->getRepository("AppBundle:UserTest")->findOneBy([
                    'hash' => $data->user_data->hash,
                    'code' => $data->user_data->hash],
                );

得到类似WHERE hash = 'foo' OR code = 'foo'

的东西

您必须在实体 UserTest 存储库中定义方法

// UserTestRepository.php

public function getUserTestByHashOrCode($hash, $code){
    return $this->createQueryBuilder('u')
        ->where('hash = :hash')
        ->orWhere('code = :code')
        ->setParameter('hash', $hash)
        ->setParameter('code', $code)
        ->getQuery()
        ->getOneOrNullResult();

然后

$user_test = $em->getRepository("AppBundle:UserTest")->getUserTestByHashOrCode($data->user_data->hash, $data->user_data->hash);