Php Symfony2使用条令结果填充对象
我正在开发Symfony2API,只是为了学习一些东西。我试图实现的是: 从DB加载模板这正在工作。 现在,我正试图在浏览器中从数据库中输出检索到的模板,这正是我努力的方向 所以我的条令有效并检索模板,我还创建了TemplateResponse,在这里我想用条令数组key=>value填充每个construc变量 TemplateResponse文件:Php Symfony2使用条令结果填充对象,php,symfony,doctrine-orm,Php,Symfony,Doctrine Orm,我正在开发Symfony2API,只是为了学习一些东西。我试图实现的是: 从DB加载模板这正在工作。 现在,我正试图在浏览器中从数据库中输出检索到的模板,这正是我努力的方向 所以我的条令有效并检索模板,我还创建了TemplateResponse,在这里我想用条令数组key=>value填充每个construc变量 TemplateResponse文件: <?php namespace Boltmail\UserBundle\BoltmailResponse; class Templat
<?php
namespace Boltmail\UserBundle\BoltmailResponse;
class TemplateResponse {
/**
* @var integer
*/
public $templates;
/**
* @param $templates
*/
public function __construct(
$templates
){
$this->templates = $templates;
}
}
所以我相信Doctrine会以数组的形式返回数据,我试图访问它的值,就像它们是对象一样,这就是为什么我会出现这个错误
在填充TemplateReponse之前,我还尝试在If语句中使用foreach循环,但这也不起作用。你知道我该怎么做吗
好的,我做了一些改变,得到了我想要的结果:
结果:
{
templates: [
{
temp_id: "0",
title: "New Template",
content: "I am new template blehhhhhh",
author: "Michael"
},
{
temp_id: "1",
title: "Liverpool Template",
content: "You Will Never Walk Alone",
author: "Bob"
}
]
}
你试图实现的东西已经存在于Symfony内部:它被调用。你试图实现的东西已经存在于Symfony内部:它被调用。你试图实现的东西已经存在于Symfony内部:它被调用。你试图实现的东西已经存在于Symfony内部Symfony:它被称为。您能提供searchTemplate实现吗?请检查以上更改使用一些日志功能执行调试。我假设您没有执行正确的查询,并且返回值为null或某种形式。尝试使用get_类($this->template);顺便说一句,原则将帮助你不需要重新发明轮子。。。如果您使用null参数调用该方法,这将引发异常。请检查上面的编辑是否提供searchTemplate实现?请检查上面的更改使用一些日志功能执行调试。我假设您没有执行正确的查询,并且返回值为null或某种形式。尝试使用get_类($this->template);顺便说一句,原则将帮助你不需要重新发明轮子。。。如果您使用null参数调用该方法,这将引发异常。请检查上面的编辑是否提供searchTemplate实现?请检查上面的更改使用一些日志功能执行调试。我假设您没有执行正确的查询,并且返回值为null或某种形式。尝试使用get_类($this->template);顺便说一句,原则将帮助你不需要重新发明轮子。。。如果您使用null参数调用该方法,这将引发异常。请检查上面的编辑是否提供searchTemplate实现?请检查上面的更改使用一些日志功能执行调试。我假设您没有执行正确的查询,并且返回值为null或某种形式。尝试使用get_类($this->template);顺便说一句,原则将帮助你不需要重新发明轮子。。。如果你调用带有null参数的方法,这应该会引起一个例外,请检查上面的编辑我同意我只是出于某种原因更喜欢使用原则DBAL。。。。。。不管我是否有可能实现我想要实现的目标…?是的,这是完全可能的,但是为什么要重写已经存在的东西呢?;)此外,即使你使用ORM,你也可以访问底层的DBAL连接。@Tomazi:只是为了对话,DBAL选择的原因是什么?呃,我只是想用它,我想对我来说更吸引人的是这不好。。。?是的,你必须学习一些新的东西,做一些你不习惯的事情,但这是作为一名开发人员的本质:总是尝试和学习新的东西,如果它们更好,你就会有所收获。自从我开始使用symfony1以来,我就一直使用ORM,我认为这是一个非常好的工具;您应该阅读一些文档,以帮助您决定什么对您和您的应用程序更有利。我同意,出于某种原因,我更喜欢使用DBAL原则。。。。。。不管我是否有可能实现我想要实现的目标…?是的,这是完全可能的,但是为什么要重写已经存在的东西呢?;)此外,即使你使用ORM,你也可以访问底层的DBAL连接。@Tomazi:只是为了对话,DBAL选择的原因是什么?呃,我只是想用它,我想对我来说更吸引人的是这不好。。。?是的,你必须学习一些新的东西,做一些你不习惯的事情,但这是作为一名开发人员的本质:总是尝试和学习新的东西,如果它们更好,你就会有所收获。自从我开始使用symfony1以来,我就一直使用ORM,我认为这是一个非常好的工具;您应该阅读一些文档,以帮助您决定什么对您和您的应用程序更有利。我同意,出于某种原因,我更喜欢使用DBAL原则。。。。。。不管我是否有可能实现我想要实现的目标…?是的,这是完全可能的,但是为什么要重写已经存在的东西呢?;)此外,即使你使用ORM,你也可以访问底层的DBAL连接。@Tomazi:只是为了对话,DBAL选择的原因是什么?呃,我只是想用它,我想对我来说更吸引人的是这不好。。。?是的,你必须学习一些新的东西,做一些你不习惯的事情,但这是作为一名开发人员的本质:总是尝试和学习新的东西,如果它们更好,你就会有所收获。自从我开始使用symfony1以来,我就一直使用ORM,我认为这是一个非常好的工具;您应该阅读一些文档,以帮助您决定什么对您和您的应用程序更有利。我同意,出于某种原因,我更喜欢使用DBAL原则。。。。。。不管怎样,有没有可能实现我想要的…?是的,是tot
Notice: Trying to get property of non-object
if ($template) {
return new TemplateResponse (
$template->temp_id,
$template->title,
$template->content,
$template->author
{
templates: [
{
temp_id: "0",
title: "New Template",
content: "I am new template blehhhhhh",
author: "Michael"
},
{
temp_id: "1",
title: "Liverpool Template",
content: "You Will Never Walk Alone",
author: "Bob"
}
]
}