yii框架配置數(shù)據(jù)庫連接
開始之前,請確保你已經(jīng)安裝了 PHP PDO 擴展和你所使用的數(shù)據(jù)庫的 PDO 驅(qū)動(例如 MySQL 的 pdo_mysql)。 對于使用關(guān)系型數(shù)據(jù)庫來講,這是基本要求。? ? ? ? ? ? ? ?(推薦學(xué)習(xí):yii框架)
驅(qū)動和擴展安裝可用后,打開 config/db.php 修改里面的配置參數(shù)對應(yīng)你的數(shù)據(jù)庫配置。 該文件默認(rèn)包含這些內(nèi)容:
<?php return [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2basic', 'username' => 'root', 'password' => '', 'charset' => 'utf8', ];
config/db.php 是一個典型的基于文件的配置工具。 這個文件配置了數(shù)據(jù)庫連接 yii\db\Connection 的創(chuàng)建和初始化參數(shù), 應(yīng)用的 SQL 查詢正是基于這個數(shù)據(jù)庫。
上面配置的數(shù)據(jù)庫連接可以在應(yīng)用中通過 Yii::$app->db 表達式訪問。
信息: config/db.php 將被包含在應(yīng)用配置文件 config/web.php 中, 后者指定了整個應(yīng)用如何初始化。
創(chuàng)建活動記錄
創(chuàng)建一個繼承自活動記錄類的類 Country, 把它放在 models/Country.php 文件,去代表和讀取 country 表的數(shù)據(jù)。
<?php namespace app\models; use yii\db\ActiveRecord; class Country extends ActiveRecord { }
這個 Country 類繼承自 yii\db\ActiveRecord。你不用在里面寫任何代碼。 只需要像現(xiàn)在這樣,Yii 就能根據(jù)類名去猜測對應(yīng)的數(shù)據(jù)表名。
信息: 如果類名和數(shù)據(jù)表名不能直接對應(yīng), 可以覆寫 tableName() 方法去顯式指定相關(guān)表名。
使用 Country 類可以很容易地操作 country 表數(shù)據(jù),就像這段代碼:
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.” 并在數(shù)據(jù)庫中保存更改 $country->name = 'U.S.A.'; $country->save();
信息: 活動記錄是面向?qū)ο?、功能強大的訪問和操作數(shù)據(jù)庫數(shù)據(jù)的方式。你可以在活動記錄章節(jié)了解更多信息。 除此之外你還可以使用另一種更原生的被稱做數(shù)據(jù)訪問對象的方法操作數(shù)據(jù)庫數(shù)據(jù)。
創(chuàng)建動作
為了向最終用戶顯示國家數(shù)據(jù),你需要創(chuàng)建一個操作。相比之前小節(jié)掌握的在 site 控制器中創(chuàng)建操作, 在這里為所有和國家有關(guān)的數(shù)據(jù)新建一個控制器更加合理。 新控制器名為 CountryController,并在其中創(chuàng)建一個 index 操作, 如下:
<?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 操作調(diào)用了活動記錄 Country::find() 方法,去生成查詢語句并從 country 表中取回所有數(shù)據(jù)。 為了限定每個請求所返回的國家數(shù)量,查詢在 yii\data\Pagination 對象的幫助下進行分頁。 Pagination 對象的使命主要有兩點:
為 SQL 查詢語句設(shè)置 offset 和 limit 從句, 確保每個請求只需返回一頁數(shù)據(jù)(本例中每頁是 5 行)。
在視圖中顯示一個由頁碼列表組成的分頁器, 這點將在后面的段落中解釋。
在代碼末尾,index 操作渲染一個名為 index 的視圖, 并傳遞國家數(shù)據(jù)和分頁信息進去。
創(chuàng)建視圖
在 views 目錄下先創(chuàng)建一個名為 country 的子目錄。 這個目錄存儲所有由 country 控制器渲染的視圖。在 views/country 目錄下 創(chuàng)建一個名為 index.php 的視圖文件,內(nèi)容如下:
<?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]) ?>
這個視圖包含兩部分用以顯示國家數(shù)據(jù)。第一部分遍歷國家數(shù)據(jù)并以無序 HTML 列表渲染出來。 第二部分使用 yii\widgets\LinkPager 去渲染從操作中傳來的分頁信息。 小部件 LinkPager 顯示一個分頁按鈕的列表。 點擊任何一個按鈕都會跳轉(zhuǎn)到對應(yīng)的分頁。
試運行
瀏覽器訪問下面的 URL 看看能否工作:
http://hostname/index.php?r=country/index
Atas ialah kandungan terperinci yii框架怎么連接數(shù)據(jù)庫. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Dalam era maklumat semasa, data besar, kecerdasan buatan, pengkomputeran awan dan teknologi lain telah menjadi tumpuan perusahaan utama. Di antara teknologi ini, teknologi pemaparan kad grafik, sebagai teknologi pemprosesan grafik berprestasi tinggi, telah mendapat perhatian yang lebih. Teknologi pemaparan kad grafik digunakan secara meluas dalam pembangunan permainan, filem dan kesan khas televisyen, pemodelan kejuruteraan dan bidang lain. Bagi pembangun, memilih rangka kerja yang sesuai dengan projek mereka adalah keputusan yang sangat penting. Antara bahasa semasa, PHP ialah bahasa yang sangat dinamik Beberapa rangka kerja PHP yang sangat baik seperti Yii2, Ph

Rangka kerja Yii ialah rangka kerja aplikasi Web PHP sumber terbuka yang menyediakan pelbagai alatan dan komponen untuk memudahkan proses pembangunan aplikasi Web, yang mana pertanyaan data merupakan salah satu komponen penting. Dalam rangka kerja Yii, kita boleh menggunakan sintaks seperti SQL untuk mengakses pangkalan data untuk membuat pertanyaan dan memanipulasi data dengan cekap. Pembina pertanyaan rangka kerja Yii terutamanya termasuk jenis berikut: pertanyaan ActiveRecord, pertanyaan QueryBuilder, pertanyaan arahan dan pertanyaan SQL asal

Memandangkan permintaan untuk aplikasi web terus berkembang, pembangun mempunyai lebih banyak pilihan dalam memilih rangka kerja pembangunan. Symfony dan Yii2 ialah dua rangka kerja PHP yang popular Kedua-duanya mempunyai fungsi dan prestasi yang berkuasa, tetapi apabila berhadapan dengan keperluan untuk membangunkan aplikasi web berskala besar, rangka kerja manakah yang lebih sesuai? Seterusnya kami akan menjalankan analisis perbandingan Symphony dan Yii2 untuk membantu anda membuat pilihan yang lebih baik. Gambaran Keseluruhan Asas Symphony ialah rangka kerja aplikasi web sumber terbuka yang ditulis dalam PHP dan dibina di atas

Dengan perkembangan berterusan teknologi pengkomputeran awan, sandaran data telah menjadi sesuatu yang mesti dilakukan oleh setiap perusahaan. Dalam konteks ini, amat penting untuk membangunkan sistem sandaran awan yang sangat tersedia. Rangka kerja PHP Yii ialah rangka kerja berkuasa yang boleh membantu pembangun membina aplikasi web berprestasi tinggi dengan cepat. Berikut akan memperkenalkan cara menggunakan rangka kerja Yii untuk membangunkan sistem sandaran awan yang sangat tersedia. Mereka bentuk model pangkalan data Dalam rangka kerja Yii, model pangkalan data adalah bahagian yang sangat penting. Kerana sistem sandaran data memerlukan banyak jadual dan hubungan

Perbezaan utama antara Laravel dan Yii adalah konsep reka bentuk, ciri -ciri fungsional dan senario penggunaan. 1. Laravel memberi tumpuan kepada kesederhanaan dan keseronokan pembangunan, dan menyediakan fungsi yang kaya seperti alat eloquentorm dan artisan, sesuai untuk pembangunan dan pemula yang pesat. 2.YII menekankan prestasi dan kecekapan, sesuai untuk aplikasi beban tinggi, dan menyediakan sistem Activerecord dan cache yang cekap, tetapi mempunyai lengkung pembelajaran yang curam.

Langkah -langkah untuk membekalkan dan menggunakan aplikasi YII menggunakan Docker termasuk: 1. Buat Dockerfile dan tentukan proses bangunan imej; 2. Gunakan DockerCompose untuk melancarkan aplikasi YII dan pangkalan data MySQL; 3. Mengoptimumkan saiz dan prestasi imej. Ini melibatkan bukan sahaja operasi teknikal tertentu, tetapi juga memahami prinsip kerja dan amalan terbaik Dockerfile untuk memastikan penggunaan yang cekap dan boleh dipercayai.

Dengan perkembangan pesat Internet, API telah menjadi cara penting untuk bertukar-tukar data antara pelbagai aplikasi. Oleh itu, menjadi semakin penting untuk membangunkan rangka kerja API yang mudah diselenggara, cekap dan stabil. Apabila memilih rangka kerja API, Yii2 dan Symfony ialah dua pilihan popular dalam kalangan pembangun. Jadi, yang manakah lebih sesuai untuk pembangunan API? Artikel ini akan membandingkan kedua-dua rangka kerja ini dan memberikan beberapa kesimpulan. 1. Pengenalan asas Yii2 dan Symfony ialah rangka kerja PHP matang dengan sambungan sepadan yang boleh digunakan untuk membangunkan

Jika anda bertanya "Apakah Yii?", lihat tutorial saya sebelum ini: Pengenalan kepada Rangka Kerja Yii, yang menyemak faedah Yii dan menggariskan perkara baharu dalam Yii 2.0, yang dikeluarkan pada Oktober 2014. Hmm> Dalam siri Pengaturcaraan dengan Yii2 ini, saya akan membimbing pembaca menggunakan rangka kerja Yii2PHP. Dalam tutorial hari ini, saya akan berkongsi dengan anda cara memanfaatkan fungsi konsol Yii untuk menjalankan kerja cron. Pada masa lalu, saya telah menggunakan wget - URL yang boleh diakses web - dalam tugas cron untuk menjalankan tugas latar belakang saya. Ini menimbulkan kebimbangan keselamatan dan mempunyai beberapa masalah prestasi. Semasa saya membincangkan beberapa cara untuk mengurangkan risiko dalam siri Keselamatan untuk Permulaan kami, saya berharap untuk beralih kepada arahan yang dipacu konsol
