Symfony2 toString () - Methode mit mehreren Variablen

Ich habe gebaut ein Konzern auszuführen, die Verbände mit mehr als einer weiteren Tabelle für die Daten, die verwendet werden, um füllen Sie eine "dropdown - " - element auf einer form.

Jedoch, wenn ich versuche, öffnen Sie die Seite, es sagt, ich habe eine toString() Fehler. Ich habe behandelt diese, bevor Sie mit einer einzigen entity-relationship -, aber ich bin ratlos, wie damit umzugehen ist, die auf einer multiple-relationship-Systems.

Hier ist mein code:

class Articles
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="title", type="string", length=255, nullable=false)
     */
    private $title;

    /**
     * @var string
     *
     * @ORM\Column(name="content", type="text", nullable=false)
     */
    private $content;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="datetime", type="datetime", nullable=false)
     */
    private $datetime;

    /**
     * @ORM\ManyToOne(targetEntity="ArticlesCategory", inversedBy="articles")
     * @ORM\JoinColumn(name="category_id", referencedColumnName="id")
     */
    private $category;

    /**
     * @var string
     *
     * @ORM\Column(name="path", type="string", length=255, nullable=false)
     */
    private $path;

    /**
     * @ORM\ManyToOne(targetEntity="ArticlesAuthor", inversedBy="articles")
     * @ORM\JoinColumn(name="author_id", referencedColumnName="id")
     */
    private $author;   

    /**
     * @ORM\ManyToOne(targetEntity="Matches", inversedBy="articles")
     * @ORM\JoinColumn(name="match_id", referencedColumnName="id")
     */
    private $match; 

    public function __toString()
    {
        return $this->??????????;
    }
}

Ich bin mir nicht sicher, ob ich kann ein array zurückgeben, oder muss irgendwie definieren, die es anderswo. Vielen Dank im Voraus!

  • __toString einfach muss wieder ein string. Beliebige string.
  • Nicht dies im Endeffekt machen es dann nutzlos? Ist das nicht der Punkt von toString() zu formatieren, was es gibt, so dass die Elemente bilden, kann es nutzen?
  • Macht er es nicht, nutzlos. __toString() wie es aus dem Namen konvertiert ein beliebiges Objekt, das definiert hat, es in einen string. Wenn Sie wollen, Rückgabe-array - erstellen toArray() Methode und verwenden Sie es.
  • So konnte ich zurück "12345" und es würde immer noch funktionieren? Ich muss nicht immer, was du bist Sinne von willkürlich.
  • Sie können Sie wieder any string. Wie any string. Sobald "12345" ist ein string - es wird funktionieren.
  • return $this->title; wäre schön, für Ihre Person
  • Auch return 'Item with ID: ' . $this->id; arbeiten

Schreibe einen Kommentar