Ich habe keine Ahnung warum, aber nach ein paar (nicht verwandten) Änderungen sind alle meine Returns Objekte statt Arrays. Zum Beispiel:Symfony-Doktrin gibt Objekte anstelle von Arrays zurück
ReceiptController.php
/**
* Get all receipts for the team.
*
* @param String $id
* @return array
*
* @SWG\Response(
* response=201,
* description="Get all receipt for the team.",
* @SWG\Schema(
* type="array"
* )
*)
*/
public function getTeamReceiptsAction($id): array
{
$parameterBag = [
'teamId' => $id
];
$items = $this->manager->getAll($parameterBag);
return $items;
}
Receiptrepository
/**
* @inheritdoc
*/
public function getFilterQuery($parameterBag): QueryBuilder
{
$qb = $this
->createQueryBuilder('s')
;
if (isset($parameterBag['id'])) {
$qb->andWhere('s.id=(:id)')
->setParameter('id', $parameterBag['id']);
}
if (isset($parameterBag['teamId'])) {
$qb->andWhere('s.team=(:team)')
->setParameter('team', $parameterBag['teamId']);
}
return $qb;
}
/**
* @inheritdoc
*/
public function getAll($parameterBag): ?array
{
$qb = $this->getFilterQuery($parameterBag);
return $qb->getQuery()->getResult();
}
Returns: {"0":{"email":"[email protected]","first_name"...
Während ich würde [{"email":"[email protected]","first_name"...
erwarten?
So gibt es ein Objekt mit mehreren Objekten anstelle eines Arrays zurück.
Aber das ist komisch, weil alle meine Funktionen eingegeben werden, um Arrays zurückzukehren, und ich bekomme keine Fehler?
Machen Sie einen Dump (get_class ($ items)) und se Welche Art von Objekt ist es? Könnte ein Objekt sein, das die verschiedenen Array-Schnittstellen implementiert, die wiederum die Array-Typ-Tests bestehen. – Cerad
Wenn ich das tue, bekomme ich den folgenden internen Fehler: '{" code ": 500," message ":" Warnung: get_class() erwartet Parameter 1 als Objekt, Array als "}'. Interessant. – user3634184