ホームページ >PHPフレームワーク >YII >yii でデータベースに接続する方法

yii でデータベースに接続する方法

尚
オリジナル
2019-12-31 16:16:283442ブラウズ

yii でデータベースに接続する方法

Yii は PDO (PHP Date Object) を使用してさまざまなデータベースに接続するため、ほとんどすべての主流データベースに適切なサポートを提供できます。これは、成熟したフレームワークが持つべき幅広い適用性でもあります。

データベースで操作を実行する前に、データベース サーバーとの接続を確立する必要があります。 Yii アプリケーションには、データベース接続を処理するための専用のコアコンポーネントがあり、設定ファイルで簡単に見つけることができます:

'components' => [
    'db' => [
        'class' => 'yii\db\Connection',
        'dsn' => 'mysql:host=localhost;dbname=yii2advanced',
        'username' => 'root',
        'password' => '',
        'charset' => 'utf8',
    ],
    // ... ...],// ... ...

Yii は yii\db\Connection を使用してデータベース接続を表します。この接続は、PDO の単純なカプセル化を実装し、さまざまなデータベース間の違いをマスクし、統合された開発インターフェイスを実装します。

これにより、プログラミング プロセス中にデータベースの互換性の問題のほとんどを無視して、機能開発に重点を置くことができます。たとえば、MySQL などで Money 型フィールドが使用できないことを心配する必要はなくなります。

yii\db\Connection には、PDO データベース ドライバーと特定のスキーマ クラス間のマッピング関係を確立するために使用される $schemaMap 配列があります。

public $schemaMap = [
    'pgsql' => 'yii\db\pgsql\Schema', // PostgreSQL
    'mysqli' => 'yii\db\mysql\Schema', // MySQL
    'mysql' => 'yii\db\mysql\Schema', // MySQL
    'sqlite' => 'yii\db\sqlite\Schema', // sqlite 3
    'sqlite2' => 'yii\db\sqlite\Schema', // sqlite 2
    'sqlsrv' => 'yii\db\mssql\Schema', // newer MSSQL driver on MS Windows hosts
    'oci' => 'yii\db\oci\Schema', // Oracle driver
    'mssql' => 'yii\db\mssql\Schema', // older MSSQL driver on MS Windows hosts
    'dblib' => 'yii\db\mssql\Schema', // dblib drivers on GNU/Linux (and maybe other OSes) hosts
    'cubrid' => 'yii\db\cubrid\Schema', // CUBRID];

次のように考えることができます。 Yii のデフォルトは、上記の配列で 10 個の DBMS (6 スキーマ) をサポートしますが、ほとんどの場合、これで十分です。この範囲を超えて DBMS を使用する場合は、Yii が互換性を確保しながら DBMS をサポートできるように、スキーマを自分で記述することができます。

推奨学習: yii フレームワーク

以上がyii でデータベースに接続する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。