Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung der Datenbankabfragevorgänge des PHP Yii-Frameworks

Zusammenfassung der Datenbankabfragevorgänge des PHP Yii-Frameworks

小云云
小云云Original
2017-11-16 11:39:232321Durchsuche

Yii ist einfach zu erlernen und zu verwenden. Sie müssen lediglich PHP und objektorientierte Programmierung beherrschen und können schnell loslegen, ohne sich vorher eine neue Architektur oder Template-Sprache aneignen zu müssen. Die Entwicklung mit Yii ist sehr schnell und erfordert außer dem Framework selbst nur sehr wenig Programmieraufwand für die Anwendung. Tatsächlich ist es eines der effizientesten Entwicklungsframeworks. Wie viel wissen Sie über die Methode zur Datenbankabfrage von Daten im Yii-Framework? Heute hat der Herausgeber eine Zusammenfassung für alle erstellt.

Eine Zusammenfassung der Datenbankabfragedatenmethoden unter dem yii-Framework.

(1)

$result=Yii::app()->dbName->createCommand($sql)->queryRow();

Die zurückgegebene Ergebnismenge ist ein eindimensionales Array, wenn sie nicht leer ist. Der dbName im Code ist der Name der Bibliothek, in der sich die Datentabelle befindet, und $sql kann eine beliebige SQL-Anweisung sein.

(2)

$result=Yii::app()->dbName->createCommand($sql)->queryAll();

Die zurückgegebene Ergebnismenge ist ein zweidimensionales Array, wenn sie nicht leer ist. Der dbName im Code ist der Name der Bibliothek, in der sich die Datentabelle befindet, und $sql kann eine beliebige SQL-Anweisung sein.

(3)

$result=Region::model()->findByPk($id);

Das zurückgegebene Ergebnis ist ein Objekt, wenn es nicht leer ist. Die Region im Code stellt die Datei Region.php dar, die hier im Modellverzeichnis gespeichert ist Der Wert von id stellt den Wert dar, der dem in Region.php definierten Primärschlüssel entspricht.

(4)

$result=Region::model()->findAll($condition,$params);

Zum Beispiel:

findAll("username=:name",array(":name"=>$username));

Die zurückgegebene Ergebnismenge ist ein zweidimensionales Array, wenn sie nicht leer ist. Die erste Dimension von Das Array ist Die Ergebnismenge ist ein Objekt.

(5)

$admin=User::model()->findAllByPk($postIDs,$condition,$params);

Zum Beispiel:

findAllByPk($id,"name like ':name' and age=:age",array(':name'=>$name,'age'=>$age));

Diese Methode fragt eine Menge basierend auf dem Primärschlüssel ab, und die zurückgegebene Ergebnismenge ist eins, wenn ja ist nicht leer. Zweidimensionales Array, die Ergebnismenge der ersten Dimension des Arrays ist ein Objekt. Sie können auch mehrere Primärschlüssel verwenden, wie zum Beispiel: findAllByPk(array(1,2));

(6)

$admin=User::model()->findAllBySql($sql,$params);

Die zurückgegebene Ergebnismenge ist eine Zwei, wenn dies der Fall ist nicht leer. Dimensionsarray, der Ergebnissatz der ersten Dimension des Arrays ist ein Objekt. Anwendungsbeispiele sind:

findAllBySql("select * from admin where username=:name",array(':name'=>'admin'));

(7)

$post=Post::model()->findBySql($sql,$params);

Der zurückgegebene Ergebnissatz ist eins, wenn es kein leeres Objekt ist, ist das Abfrageergebnis nur das erste Datenelement. Beispiel:

findBySql("select * from user where username=:name",array(':name'=>'phpernote.com'));

(8) Die von

$row=User::model()->find($condition,$params);

zurückgegebene Ergebnismenge ist ein Objekt, wenn sie nicht leer ist und das Abfrageergebnis nur das erste Datenelement ist. Zum Beispiel:

find('username=:name',array(':name'=>'admin'));

oder:

find(array('condition'=>'user_id=:user_id','params'=>array(':user_id'=>$uid)));

(9)

$admin=User::model()->findByAttributes($attributes,$condition,$params);

Diese Methode dient der Abfrage von Daten basierend auf Bedingungen , was sein kann Bei mehreren Bedingungen fügen Sie die Bedingungen in ein Array ein. Die Abfrageergebnismenge ist ein Objekt und enthält nur ein Datenelement, z. B.:

findByAttributes(array('username'=>'admin'));

oder:


(10)

$admin=User::model()->findAllByAttributes($attributes,$condition,$params);

Die zurückgegebene Ergebnismenge ist ein zweidimensionales Array, wenn sie nicht leer ist, und die Ergebnismenge in der ersten Dimension des Arrays ist ein Objekt.

(9)

// 如果查询条件很是复杂,就要使用CDbCriteria类
$criteria=new CDbCriteria;$criteria->select='title';$creteria->condition='postID=:postID';
$criteria->params=array(':postID'=>10);$post=Post::model()->find($criteria); // 不需要第二个参数
// 另一种更好的写法
$post=Post::model()->find( array(        'select'=>'title',        'condition'=>'postID=:postID',        'params'=>array(':postID'=>10)    ));

Fragen Sie die Zahl ab und ermitteln Sie, ob die Abfrage Ergebnisse liefert

1 ist Fragen Sie basierend auf einer Bedingung ab, wie viele Datensätze es in einer Sammlung gibt, und geben Sie eine int-Zahl zurück, z. B.:

$n=Post::model()->count($condition,$params);



2,

count("username=:name",array(":name"=>$username));

Dies Die Methode basiert auf SQL. Die Anweisung fragt ab, wie viele Datensätze in einer Sammlung vorhanden sind, und gibt eine int-Zahl zurück, z. B.:

$n=Post::model()->countBySql($sql,$params);

3,

countBySql("select * from admin where username=:name",array(':name'=>'admin'));
Diese Methode wird auf der Grundlage einer bedingten Abfrage abgerufen. Verfügt das Array über Daten? Wenn Daten vorhanden sind, wird „true“ zurückgegeben, andernfalls wird es nicht gefunden.

$exists=Post::model()->exists($condition,$params);
Das Obige ist eine Zusammenfassung der Methoden zur Datenbankabfrage von Daten im Yii-Framework. Ich glaube, dass jeder ein detaillierteres Verständnis davon hat. Wir haben zuvor auch weitere verwandte Artikel über das Yii-Framework erwähnt. Sie können auf die chinesische PHP-Website achten.


Verwandte Empfehlungen:

Erklärung zur Verwendung von Memcache im YII-Framework

Erklärung von Yii2 mithilfe von Formularen zum Hochladen von Dateien

Erläuterung zur Yii-Framework-Implementierung von Bestätigungscode, Anmelde- und Abmeldefunktionen

PHP – Yii-Framework-Caching-Wissenssammlung

Entwicklung des Yii-Framework-Framework-Moduls

Das obige ist der detaillierte Inhalt vonZusammenfassung der Datenbankabfragevorgänge des PHP Yii-Frameworks. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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