YII-Framework-Konfigurationsdatenbankverbindung
Bevor Sie beginnen, stellen Sie sicher, dass Sie die PHP-PDO-Erweiterung und Ihre installiert haben Der PDO-Treiber der verwendeten Datenbank (z. B. pdo_mysql von MySQL). Für den Einsatz relationaler Datenbanken ist dies eine Grundvoraussetzung. (Empfohlenes Lernen:
öffnen Sie die config/db.php-Änderung im Konfigurationsparameter in der Änderung, die Ihrer entspricht Datenbankkonfiguration. Die Datei enthält standardmäßig diesen Inhalt:
<?php return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2basic', 'username' => 'root', 'password' => '', 'charset' => 'utf8', ];
信息: config/db.php 将被包含在应用配置文件 config/web.php 中, 后者指定了整个应用如何初始化。
Aktivitätsdatensatz erstellen
Erstellen Sie ein Klassenland, das von der Aktivitätsdatensatzklasse erbt, und fügen Sie es in die Datei models/Country.php ein, um das Land darzustellen und zu lesen Tabellendaten.<?php namespace app\models; use yii\db\ActiveRecord; class Country extends ActiveRecord { }
信息: 如果类名和数据表名不能直接对应, 可以覆写 tableName() 方法去显式指定相关表名。
use app\models\Country; // 获取 country 表的所有行并以 name 排序 $countries = Country::find()->orderBy('name')->all(); // 获取主键为 “US” 的行 $country = Country::findOne('US'); // 输出 “United States” echo $country->name; // 修改 name 为 “U.S.A.” 并在数据库中保存更改 $country->name = 'U.S.A.'; $country->save();
Aktion erstellen
<?php namespace app\controllers; use yii\web\Controller; use yii\data\Pagination; use app\models\Country; class CountryController extends Controller { public function actionIndex() { $query = Country::find(); $pagination = new Pagination([ 'defaultPageSize' => 5, 'totalCount' => $query->count(), ]); $countries = $query->orderBy('name') ->offset($pagination->offset) ->limit($pagination->limit) ->all(); return $this->render('index', [ 'countries' => $countries, 'pagination' => $pagination, ]); } }
Ansicht erstellen
Erstellen Sie zunächst ein Unterverzeichnis mit dem Namen „Land“ im Ansichtenverzeichnis. In diesem Verzeichnis werden alle vom Ländercontroller gerenderten Ansichten gespeichert. Erstellen Sie eine Ansichtsdatei mit dem Namen index.php im Verzeichnis „views/country“ mit folgendem Inhalt:<?php use yii\helpers\Html; use yii\widgets\LinkPager; ?> <h1>Countries</h1> <ul> <?php foreach ($countries as $country): ?> <li> <?= Html::encode("{$country->name} ({$country->code})") ?>: <?= $country->population ?> </li> <?php endforeach; ?> </ul> <?= LinkPager::widget(['pagination' => $pagination]) ?>
Testlauf
Besuchen Sie die folgende URL in Ihrem Browser, um zu sehen, ob es funktioniert:
http://hostname/index.php?r=country/index
Das obige ist der detaillierte Inhalt vonSo verbinden Sie das yii-Framework mit der Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!