Estoy usando Symfony 2 con Doctrine 2 para crear un servicio web (JSON) para una aplicación de iOS.Symfony 2 Exportación de Doctrine a JSON
a buscar a mi entidad hago:
$articles = $this->getDoctrine()->getRepository('UdoPaddujourBundle:MenuArticle')->findAll();
debo decir que:
$article = array();
$article = $articles->toArray();
me da el siguiente error:
Fatal error: Call to a member function toArray() on a non-object
Lo mismo happends con
$article = $articles->exportTo('json');
¿Cómo puedo crear una respuesta json?
Saludos cordiales, Cearnau Dan
Editar: var_dump artículos ($) =
array(18) {
[0]=>
object(Udo\PaddujourBundle\Entity\MenuArticle)#50 (4) {
["id":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
int(1)
["name":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
string(17) "My Article Name 1"
["description":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
string(26) "My Article Description 1"
["price":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
float(20)
}
[1]=> ...
- de editar posteriormente
¿Cómo puedo recorrer todos los "nombres de propiedad"? Esto es lo que tengo:
$myarray=array();
$myArray["name"]=array();
$myArray["description"]=array();
foreach($articles in $article)
{
array_push($myArray["name"], $article->getName());
array_push($myArray["description"], $article->getDescription());
}
Lo que da 'var_dump ($ artículos);'? – hakre
array (18) { [0] => objeto (Udo \ PaddujourBundle \ Entidad \ MenuArticle) # 50 (4) { [ "id": "Udo \ PaddujourBundle \ Entidad \ MenuArticle": private] => int (1) ["nombre": "Udo \ PaddujourBundle \ Entity \ MenuArticle": privado] => cadena (17) "Mi nombre de artículo 1" ["description": "Udo \ PaddujourBundle \ Entity \ MenuArticle" : private] => string (24) "Mi artículo Descripción 1" [ "precio": "Udo \ PaddujourBundle \ Entidad \ MenuArticle": private] => flotador (20) } [1] => ** Y así sucesivamente hasta [17] ** –
¿Qué le da 'json_encode ($ articles);'? – hakre