Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony-对数组上的成员函数的调用_Php_Symfony - Fatal编程技术网

Php Symfony-对数组上的成员函数的调用

Php Symfony-对数组上的成员函数的调用,php,symfony,Php,Symfony,我有以下功能: public function getUserMediaAction(Request $request) { $data = $this->decodeToken($request); $username = $data['email']; $user = $this->getDoctrine()->getRepository('ApplicationSonataUserBundle:User') -&g

我有以下功能:

public function getUserMediaAction(Request $request)
{
    $data = $this->decodeToken($request);
    $username = $data['email'];
    $user = $this->getDoctrine()->getRepository('ApplicationSonataUserBundle:User')
                 ->findOneBy(['email' => $username]);
    $idUser = $user->getId();
    $media = $this->getDoctrine()->getRepository('ApplicationSonataUserBundle:User')
                  ->findNewbieAllData($idUser);

    return new JsonResponse(['media' => $media->getPath()]);
}
findNewbieAllData:

public function findNewbieAllData($id_newbie)
{
    $sql = "SELECT m
            FROM ApplicationSonataUserBundle:User u
            JOIN ApplicationSonataUserBundle:Media m
            WHERE u.id=?1";

    $query = $this->getEntityManager()

                    ->createQuery($sql)
                    ->setParameter(1, $id_newbie);

    $result = $query->getArrayResult();
    return $result;
}
不幸的是,返回以下错误:

Call to a member function getPath() on array

Stack Trace

in src\CoolbirdBundle\Controller\UserController.php at line 97   -
        $media = $this->getDoctrine()->getRepository('ApplicationSonataUserBundle:User')
                      ->findNewbieAllData($idUser);
        return new JsonResponse(['media' => $media->getPath()]);
    }
有人知道吗​​请问我怎样才能解决这个问题


提前感谢您

请尝试以下操作:

return new JsonResponse(['media' => $media[0]->getPath()]);
编辑:查看
var\u dump
输出,您应该尝试以下操作:

return new JsonResponse(['media' => $media[0]['path']]);

方法
findNewbieAllData
使用数组对数据进行水合物化

$result = $query->getArrayResult();
    return $result;
在这里查看
getArrayResult
方法:

改用
getResult
方法