Heim > php教程 > PHP开发 > Symfony2 verwendet Doctrine für die Beispielzusammenfassung einer Datenbankabfragemethode

Symfony2 verwendet Doctrine für die Beispielzusammenfassung einer Datenbankabfragemethode

高洛峰
Freigeben: 2016-12-26 11:31:04
Original
1300 Leute haben es durchsucht

Das Beispiel in diesem Artikel beschreibt, wie Symfony2 Doctrine verwendet, um Datenbankabfragen durchzuführen. Teilen Sie es allen als Referenz mit. Die Details lauten wie folgt:

Im Text verwendete vordefinierte Variablen:

$em = $this->getDoctrine()->getEntityManager();
$repository = $em->getRepository('AcmeStoreBundle:Product')
Nach dem Login kopieren

1. Grundlegende Methode

$repository->find($id);
$repository->findAll();
$repository->findOneByName('Foo');
$repository->findAllOrderedByName();
$repository->findOneBy(array('name' => 'foo', 'price' => 19.99));
$repository->findBy(array('name' => 'foo'),array('price' => 'ASC'));
Nach dem Login kopieren

2. DQL

$query = $em->createQuery(
'SELECT p FROM AcmeStoreBundle:Product p WHERE p.price > :price ORDER BY p.price ASC'
)->setParameter('price', '19.99′);
$products = $query->getResult();
Nach dem Login kopieren

Hinweis:

(1) Um ein Ergebnis zu erhalten, können Sie Folgendes verwenden:

$product = $query->getSingleResult();
Nach dem Login kopieren

Um die getSingleResult()-Methode zu verwenden, müssen Sie umbrechen Es wird garantiert nur ein Ergebnis zurückgegeben:

->setMaxResults(1);
try {
$product = $query->getSingleResult();
} catch (\Doctrine\Orm\NoResultException $e) {
$product = null;
}
Nach dem Login kopieren

Der „Platzhalter“-Preiswert in der Abfrageanweisung, anstatt den Wert direkt hineinzuschreiben Die Abfrageanweisung ist hilfreich, um SQL-Injection-Angriffe zu verhindern. Sie können auch mehrere Parameter festlegen:

3. Verwenden Sie den Abfrage-Builder von Doctrine 🎜>

->setParameters(array(
'price' => '19.99′,
'name' => 'Foo',
))
Nach dem Login kopieren

Ich hoffe, dieser Artikel wird Ihnen bei der Verwendung von PHP auf Basis des Symfony-Frameworks bei der Programmierung helfen.

Weitere Beispiele für Symfony2 mit Doctrine für Datenbankabfragemethoden und zusammenfassende Artikel finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage