Php ZF2水合作用
查询表时,例如:Php ZF2水合作用,php,doctrine-orm,zend-framework2,Php,Doctrine Orm,Zend Framework2,查询表时,例如: $query = $this->entityManager->createQueryBuilder(); $query->select('TaPost')->from("Application\Entity\TaPost", 'TaPost'); return $query->getQuery()->getResult() ) 我得到一个对象“Tapost”数组 有没有一种简单的方法(并且不会破坏性能)来获取给定新类的数组?与zend/
$query = $this->entityManager->createQueryBuilder();
$query->select('TaPost')->from("Application\Entity\TaPost", 'TaPost');
return $query->getQuery()->getResult()
)
我得到一个对象“Tapost”数组
有没有一种简单的方法(并且不会破坏性能)来获取给定新类的数组?与zend/db/sql等效的一种方法:
new HydratingResultSet(new \Zend\Stdlib\Hydrator\ClassMethods(), new myNewClass())
是否要直接获取数组结果?有两种方法。您得到的实体对象是
\Application\entity\TaPost
。您可以像这样为您的实体创建一个方法
class TaPost {
// Your entity attributes and methods
// ...
public function toArray()
{
return array(
"id" => $this->getId(),
"title" => $this->getTitle(),
"description" => $this->getDescription(),
// ...
);
}
}
并在您的for循环时使用它们
另一个解决方案是,您可以使用Doctrinehydrome\u ARRAY
$results = $query->getQuery()->getResult( Doctrine\ORM\Query::HYDRATE_ARRAY );
是否要直接获取数组结果?有两种方法。您得到的实体对象是
\Application\entity\TaPost
。您可以像这样为您的实体创建一个方法
class TaPost {
// Your entity attributes and methods
// ...
public function toArray()
{
return array(
"id" => $this->getId(),
"title" => $this->getTitle(),
"description" => $this->getDescription(),
// ...
);
}
}
并在您的for循环时使用它们
另一个解决方案是,您可以使用Doctrinehydrome\u ARRAY
$results = $query->getQuery()->getResult( Doctrine\ORM\Query::HYDRATE_ARRAY );
是否要直接获取数组结果?有两种方法。您得到的实体对象是
\Application\entity\TaPost
。您可以像这样为您的实体创建一个方法
class TaPost {
// Your entity attributes and methods
// ...
public function toArray()
{
return array(
"id" => $this->getId(),
"title" => $this->getTitle(),
"description" => $this->getDescription(),
// ...
);
}
}
并在您的for循环时使用它们
另一个解决方案是,您可以使用Doctrinehydrome\u ARRAY
$results = $query->getQuery()->getResult( Doctrine\ORM\Query::HYDRATE_ARRAY );
是否要直接获取数组结果?有两种方法。您得到的实体对象是
\Application\entity\TaPost
。您可以像这样为您的实体创建一个方法
class TaPost {
// Your entity attributes and methods
// ...
public function toArray()
{
return array(
"id" => $this->getId(),
"title" => $this->getTitle(),
"description" => $this->getDescription(),
// ...
);
}
}
并在您的for循环时使用它们
另一个解决方案是,您可以使用Doctrinehydrome\u ARRAY
$results = $query->getQuery()->getResult( Doctrine\ORM\Query::HYDRATE_ARRAY );
谢谢你的回答,但这不是我的目标。 我正在尝试做,我使用的不是zend db sql,而是条令 我有一个方法
findAll()。
有了条令,我得到一个TaPost
数组(作为条令的一个实体,TaPost
),但我需要返回一个Post
数组
我如何告诉条令自动添加Post
而不是TaPost
?我是否需要对我的条令结果进行一番讨论,并逐一发布一个对象
ps:使用zned sql,他们在得到结果时会这样做:
$resultSet = new HydratingResultSet(new \Zend\Stdlib\Hydrator\ClassMethods(), new \Blog\Model\Post());
return $resultSet->initialize($result);
谢谢你的回答,但这不是我的目标。
我正在尝试做,我使用的不是zend db sql,而是条令
我有一个方法findAll()。
有了条令,我得到一个TaPost
数组(作为条令的一个实体,TaPost
),但我需要返回一个Post
数组
我如何告诉条令自动添加Post
而不是TaPost
?我是否需要对我的条令结果进行一番讨论,并逐一发布一个对象
ps:使用zned sql,他们在得到结果时会这样做:
$resultSet = new HydratingResultSet(new \Zend\Stdlib\Hydrator\ClassMethods(), new \Blog\Model\Post());
return $resultSet->initialize($result);
谢谢你的回答,但这不是我的目标。
我正在尝试做,我使用的不是zend db sql,而是条令
我有一个方法findAll()。
有了条令,我得到一个TaPost
数组(作为条令的一个实体,TaPost
),但我需要返回一个Post
数组
我如何告诉条令自动添加Post
而不是TaPost
?我是否需要对我的条令结果进行一番讨论,并逐一发布一个对象
ps:使用zned sql,他们在得到结果时会这样做:
$resultSet = new HydratingResultSet(new \Zend\Stdlib\Hydrator\ClassMethods(), new \Blog\Model\Post());
return $resultSet->initialize($result);
谢谢你的回答,但这不是我的目标。
我正在尝试做,我使用的不是zend db sql,而是条令
我有一个方法findAll()。
有了条令,我得到一个TaPost
数组(作为条令的一个实体,TaPost
),但我需要返回一个Post
数组
我如何告诉条令自动添加Post
而不是TaPost
?我是否需要对我的条令结果进行一番讨论,并逐一发布一个对象
ps:使用zned sql,他们在得到结果时会这样做:
$resultSet = new HydratingResultSet(new \Zend\Stdlib\Hydrator\ClassMethods(), new \Blog\Model\Post());
return $resultSet->initialize($result);
试着用水合器代替zend水合器
$model = new \Blog\Model\Post();
$hydrator = new \DoctrineModule\Stdlib\Hydrator\DoctrineObject($this->getEntityManager(), 'Blog\Model\Post');
$model = $hydrator->hydrate($array, $model);
试着用水合器代替zend水合器
$model = new \Blog\Model\Post();
$hydrator = new \DoctrineModule\Stdlib\Hydrator\DoctrineObject($this->getEntityManager(), 'Blog\Model\Post');
$model = $hydrator->hydrate($array, $model);
试着用水合器代替zend水合器
$model = new \Blog\Model\Post();
$hydrator = new \DoctrineModule\Stdlib\Hydrator\DoctrineObject($this->getEntityManager(), 'Blog\Model\Post');
$model = $hydrator->hydrate($array, $model);
试着用水合器代替zend水合器
$model = new \Blog\Model\Post();
$hydrator = new \DoctrineModule\Stdlib\Hydrator\DoctrineObject($this->getEntityManager(), 'Blog\Model\Post');
$model = $hydrator->hydrate($array, $model);
谢谢你的回答,但那不完全是我的目标。谢谢你的回答,但那不完全是我的目标。谢谢你的回答,但那不完全是我的目标。谢谢你的回答,但那不完全是我的目标。