yii フレームワークをデータベースに接続する方法
yii フレームワーク構成データベース接続
始める前に、PHP PDO 拡張機能がインストールされていることを確認してください。 your 使用するデータベースの PDO ドライバー (MySQL の pdo_mysql など)。リレーショナル データベースを使用する場合、これが基本要件です。 (推奨される学習: yii フレームワーク)
ドライバーと拡張機能がインストールされて使用可能になったら、config/db.php を開いて、内部の構成パラメーターを次のように変更します。データベース構成に対応します。 ファイルには、デフォルトで次の内容が含まれています。
<?php return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2basic', 'username' => 'root', 'password' => '', 'charset' => 'utf8', ];
config/db.php は、典型的なファイルベースの構成ツールです。このファイルは、データベース接続 yii\db\Connection の作成および初期化パラメータを構成し、適用される SQL クエリはこのデータベースに基づいています。
上で設定したデータベース接続には、Yii::$app->db 式を介してアプリケーションでアクセスできます。
信息: config/db.php 将被包含在应用配置文件 config/web.php 中, 后者指定了整个应用如何初始化。
アクティブ レコードの作成
アクティブ レコード クラスから継承するクラス Country を作成し、それを models/ Country.php ファイルに配置して国を表し、読み取ることができます。テーブルデータ。
<?php namespace app\models; use yii\db\ActiveRecord; class Country extends ActiveRecord { }
この Country クラスは yii\db\ActiveRecord から継承します。コードを記述する必要はありません。現在と同様に、Yii はクラス名に基づいて対応するデータテーブル名を推測できます。
信息: 如果类名和数据表名不能直接对应, 可以覆写 tableName() 方法去显式指定相关表名。
次のコードのように、 Country クラスを使用して国テーブル データを簡単に操作できます。
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();
情報: Active Record は、データベース データにアクセスして操作するためのオブジェクト指向の強力な方法です。詳細については、「アクティビティ ログ」の章をご覧ください。さらに、データ アクセス オブジェクトと呼ばれる別のよりネイティブなメソッドを使用して、データベース データを操作することもできます。
アクションの作成
エンド ユーザーに国データを表示するには、アクションを作成する必要があります。前のセクションでマスターしたサイト コントローラーでの作成操作と比較して、ここですべての国関連データに対して新しいコントローラーを作成する方が合理的です。新しいコントローラーに CountryController という名前を付け、次のようにその中にインデックス アクションを作成します。
<?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, ]); } }
上記のコードをcontrollers/ CountryController.php ファイルに保存します。
index オペレーションは、アクティブ レコード Country::find() メソッドを呼び出してクエリ ステートメントを生成し、country テーブルからすべてのデータを取得します。リクエストごとに返される国の数を制限するために、クエリは yii\data\Pagination オブジェクトを使用してページ分割されます。 Pagination オブジェクトには 2 つの主要な使命があります。
SQL クエリ ステートメントの offset 句とlimit 句を設定して、各リクエストが 1 ページのデータのみを返すようにします (この例では、各ページは 5 行です)。
ページ番号のリストで構成されるページネータをビューに表示します。これについては次の段落で説明します。
コードの最後で、インデックス操作によってインデックスという名前のビューがレンダリングされ、そこに国データとページング情報が渡されます。
ビューの作成
まず、views ディレクトリに country という名前のサブディレクトリを作成します。このディレクトリには、カントリー コントローラーによってレンダリングされたすべてのビューが保存されます。次の内容を含む、index.php という名前のビュー ファイルを views/country ディレクトリに作成します。
<?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]) ?>
このビューには、国データを表示する 2 つの部分が含まれています。最初の部分は国データをループし、順序なしの HTML リストとしてレンダリングします。 2 番目の部分では、yii\widgets\LinkPager を使用して、オペレーションから渡されたページング情報をレンダリングします。ウィジェット LinkPager には、ページング ボタンのリストが表示されます。いずれかのボタンをクリックすると、対応するページにジャンプします。
#試用実行
# ブラウザで次の URL にアクセスして、動作するかどうかを確認してください:以上がyii フレームワークをデータベースに接続する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。http://hostname/index.php?r=country/index

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











クラウド コンピューティング テクノロジの継続的な発展により、データのバックアップはすべての企業が行う必要のあるものになりました。この文脈では、可用性の高いクラウド バックアップ システムを開発することが特に重要です。 PHP フレームワーク Yii は、開発者が高性能の Web アプリケーションを迅速に構築できる強力なフレームワークです。ここでは、Yii フレームワークを使用して可用性の高いクラウド バックアップ システムを開発する方法を紹介します。データベースモデルの設計 Yii フレームワークでは、データベースモデルは非常に重要な部分です。データ バックアップ システムには多くのテーブルとリレーションシップが必要なため、

Web アプリケーションの需要が高まるにつれ、開発者が開発フレームワークを選択する選択肢はますます増えています。 PHP フレームワークとして人気のある Symfony と Yii2 は、どちらも強力な機能とパフォーマンスを備えていますが、大規模な Web アプリケーションを開発する必要がある場合、どちらのフレームワークがより適しているのでしょうか。次に、より良い選択を行うために、Symphony と Yii2 の比較分析を行います。基本概要 Symphony は、PHP で書かれたオープンソースの Web アプリケーション フレームワークであり、上に構築されています。

インターネットの発展に伴い、Web アプリケーション開発の需要もますます高まっています。開発者にとって、アプリケーションの開発には、開発効率を向上させる、安定性、効率性、強力なフレームワークが必要です。 Yii は、豊富な機能と優れたパフォーマンスを提供する、優れた高性能 PHP フレームワークです。 Yii3 は Yii フレームワークの次世代バージョンであり、Yii2 に基づいてパフォーマンスとコード品質をさらに最適化します。この記事では、Yii3 フレームワークを使用して PHP アプリケーションを開発する方法を紹介します。

Yii フレームワークは、Web アプリケーション開発のプロセスを簡素化するための多数のツールとコンポーネントを提供するオープンソースの PHP Web アプリケーション フレームワークであり、その重要なコンポーネントの 1 つがデータ クエリです。 Yii フレームワークでは、SQL に似た構文を使用してデータベースにアクセスし、データを効率的にクエリおよび操作できます。 Yii フレームワークのクエリビルダーには主に次の種類があります: ActiveRecord クエリ、QueryBuilder クエリ、コマンド クエリ、独自の SQL クエリ

現在の情報化時代では、ビッグデータ、人工知能、クラウド コンピューティング、その他のテクノロジーが大手企業の焦点となっています。その中でも、高性能なグラフィックス処理技術として、グラフィックスカードレンダリング技術がますます注目を集めています。グラフィックス カード レンダリング テクノロジは、ゲーム開発、映画やテレビの特殊効果、エンジニアリング モデリングなどの分野で広く使用されています。開発者にとって、自分のプロジェクトに合ったフレームワークを選択することは非常に重要な決定です。現在の言語の中でも PHP は非常に動的な言語であり、Yii2、Ph などの優れた PHP フレームワークもいくつかあります。

「Yii とは何ですか?」という質問がある場合は、私の以前のチュートリアル「Yii フレームワークの紹介」を参照してください。このチュートリアルでは、Yii の利点をレビューし、2014 年 10 月にリリースされた Yii 2.0 の新機能の概要を説明しています。うーん> この Yii2 によるプログラミング シリーズでは、読者に Yii2PHP フレームワークの使い方をガイドします。今日のチュートリアルでは、Yii のコンソール機能を活用して cron ジョブを実行する方法を共有します。以前、私はバックグラウンド タスクを実行するために cron ジョブで wget (Web アクセス可能な URL) を使用しました。これにより、セキュリティ上の懸念が生じ、パフォーマンス上の問題も発生します。 Security for Startup シリーズでリスクを軽減するいくつかの方法について説明しましたが、コンソール駆動のコマンドに移行したいと考えていました。

インターネットの急速な発展に伴い、API はさまざまなアプリケーション間でデータを交換する重要な方法になりました。したがって、保守が容易で効率的で安定した API フレームワークを開発することがますます重要になっています。 API フレームワークを選択する場合、Yii2 と Symfony の 2 つは開発者の間で人気のある選択肢です。では、どちらが API 開発に適しているのでしょうか?この記事では、これら 2 つのフレームワークを比較し、いくつかの結論を示します。 1. 基本的な紹介 Yii2 と Symfony は、開発に使用できる対応する拡張機能を備えた成熟した PHP フレームワークです。

Yiiフレームワーク:Yiiのオブジェクトを配列に変換したり、直接json形式に出力したりする方法を紹介する記事であり、参考になると思います。
