Rumah >pembangunan bahagian belakang >tutorial php >PHP Master | Bina aplikasi CRUD dengan Yii dalam beberapa minit

PHP Master | Bina aplikasi CRUD dengan Yii dalam beberapa minit

Lisa Kudrow
Lisa Kudrowasal
2025-02-23 08:57:10555semak imbas

Rangka Kerja Yii: Panduan untuk membina aplikasi CRUD yang cekap dengan cepat

Yii adalah rangka kerja PHP berprestasi tinggi yang terkenal dengan kelajuan, keselamatan, dan sokongan yang baik untuk aplikasi Web 2.0. Ia mengikuti prinsip "Konvensyen ke atas Konfigurasi", yang bermaksud bahawa kod yang kurang dapat ditulis daripada rangka kerja lain (kurang kod bermakna bug yang lebih sedikit) selagi ia mengikuti spesifikasinya. Di samping itu, YII juga menyediakan banyak ciri mudah dari kotak, seperti perancah, objek akses data, tema, kawalan akses, cache, dan banyak lagi. Artikel ini akan memperkenalkan asas -asas menggunakan YII untuk membuat sistem CRUD.

mata utama

  • Yii adalah rangka kerja berprestasi tinggi yang sesuai untuk aplikasi Web 2.0 dan menyediakan banyak ciri mudah seperti perancah, objek akses data, tema, kawalan akses dan caching. Ia mengikuti prinsip konvensyen mengenai konfigurasi, mengurangkan jumlah kod, dengan itu mengurangkan kemungkinan bug.
  • Alat baris perintah Yii yiic digunakan untuk membuat aplikasi rangka dengan struktur direktori yang sesuai. Yii mengikuti prinsip MVC dan OOP, dan struktur URL adalah http://localhost/yiitest/index.php?r=controllerID/actionID. Pengawal dan kaedah yang dipanggil ditentukan berdasarkan ID dalam URL.
  • Alat berasaskan web Yii digunakan untuk menjana model, pengawal, dan bentuk untuk operasi CRUD, untuk membangunkan sistem CRUD dengan cepat. Sebagai contoh, sistem mudah di mana pengguna boleh melakukan operasi CRUD pada catatan blog boleh dibangunkan dalam beberapa minit. gii

pemula

Katakan anda mempunyai Apache, PHP (5.1 atau lebih baru) dan MySQL dipasang pada sistem anda, jadi langkah pertama adalah memuat turun fail rangka kerja. Lawati laman web rasmi Yii dan muat turun versi stabil terkini (1.1.13 pada masa penulisan). Unzip fail zip untuk mendapatkan folder

(Pengenalpastian versi mungkin berbeza-beza bergantung pada versi yang anda muat turun), menamakannya ke yii-1.1.13.e9e4a0, dan gerakkannya ke direktori akar yang dapat diakses oleh web anda. Dalam sistem saya, ini adalah yii, jadi jalan ke fail kerangka akan menjadi C:\wamp\www. Dalam artikel ini, saya akan memanggilnya C:\wamp\www\yii supaya anda dapat dengan mudah mengikuti tindakan walaupun tetapan anda berbeza. Seterusnya, kita harus menyemak ciri -ciri YII yang akan disokong oleh sistem kami. Lawati <yiiroot></yiiroot> dalam penyemak imbas anda untuk melihat butiran keperluan rangka kerja. Oleh kerana kami akan menggunakan pangkalan data MySQL, anda harus membolehkan lanjutan PDO MySQL. http://localhost/yii/requirements/

PHP Master | Build a CRUD App with Yii in Minutes Kami ingin menyemak dengan cepat keperluan Yii, sebab itulah kami meletakkan fail dalam direktori yang boleh diakses, tetapi disyorkan untuk menyimpan fail Yii di luar direktori akar web. Selepas memeriksa, anda boleh memindahkannya ke lokasi lain yang anda suka.

Terus bergerak ke hadapan

Setiap aplikasi web mempunyai struktur direktori, dan aplikasi Yii juga perlu mengekalkan struktur hierarki dalam direktori akar web. Untuk membuat aplikasi rangka menggunakan struktur direktori yang sesuai, kita boleh menggunakan alat baris perintah Yii yiic. Navigasi ke direktori root web dan taipkan yang berikut:

<code class="language-bash"><yiiroot>/framework/yiic webapp yiitest</yiiroot></code>

Ini akan membuat aplikasi rangka yang dipanggil yiitest dengan fail minimum yang diperlukan. Di dalamnya anda akan mendapati index.php, yang digunakan sebagai skrip kemasukan; YII didasarkan pada prinsip MVC dan OOP, jadi anda harus akrab dengan topik -topik ini. Jika anda tidak biasa dengan MVC, sila baca artikel SitePoint Series "Mod MVC dan PHP", yang memberikan pengenalan yang hebat. URL YII kelihatan seperti http://localhost/yiitest/index.php?r=controllerID/actionID. Sebagai contoh, dalam sistem blog, URL mungkin http://localhost/yiitest/index.php?r=post/create. post adalah ID pengawal, create adalah ID operasi. Skrip kemasukan menentukan pengawal dan kaedah yang hendak dipanggil berdasarkan ID. Pengawal dengan id post mesti dinamakan PostController (ID mengeluarkan akhiran "pengawal" dari nama kelas dan menukar huruf pertama ke huruf kecil). ID operasi adalah id kaedah dalam pengawal yang wujud dengan cara yang sama; Mungkin terdapat beberapa pandangan yang berkaitan dengan pengawal, jadi kami menyimpan fail paparan dalam folder PostController. Kami boleh membuat fail paparan bernama actionCreate() untuk pengawal kami dalam direktori di atas dan kemudian tuliskan kod berikut untuk membentangkan pandangan ini kepada pengguna: protected/views/*controllerID* create.php

Jika perlu, data lain juga boleh diserahkan kepada pandangan. Operasi adalah seperti berikut:
<code class="language-php">public function actionCreate()
{
    $this->render('create');
}</code>

Dalam fail paparan, kita boleh mengakses data melalui pembolehubah
<code class="language-php">$this->render('create', array('data' => $data_item));</code>
. Pandangan juga boleh mengakses

, yang menunjukkan kepada contoh pengawal yang menjadikannya. Juga, jika anda mahukan URL yang mesra pengguna, anda boleh mencatatkan perkara berikut dalam $data: $this protected/config/main.php

maka URL akan kelihatan seperti
<code class="language-php">'urlManager'=>array(    
    'urlFormat'=>'path',
    'rules'=>array(
        '<w>/<d>'=>'<controller>/view',
        '<w>/<w>/<d>'=>'<controller>/<action>',
        '<w>/<w>'=>'<controller>/<action>',
    )
)</action></controller></w></w></action></controller></d></w></w></controller></d></w></code>
.

http://localhost/yiitest/controllerID/actionID

Membangunkan Aplikasi CRUD

Sekarang anda telah mempelajari konvensyen Yii yang penting, sudah tiba masanya untuk mula menggunakan CRUD. Dalam bahagian ini, kami akan membangunkan sistem mudah di mana pengguna boleh melakukan operasi CRUD (membuat, mengambil, mengemas kini, dan memadam) pada catatan blog.

Langkah 1

Buat pangkalan data MySQL

dan buat jadual yang dipanggil

di dalamnya. Untuk tujuan artikel ini, jadual akan mempunyai hanya 3 lajur: ID, Tajuk, dan Kandungan. yiitest posts

Buka fail konfigurasi aplikasi (
<code class="language-sql">CREATE TABLE posts (
    id INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
    title VARCHAR(100),
    content TEXT
)</code>
) dan uncomment yang berikut:

protected/config/main.php

Ganti
<code class="language-php">'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=yiitest',
'emulatePrepare' => true,
'username' => 'root',
'password' => '',
'charset' => 'utf8',
)</code>
dengan nama pangkalan data kami, iaitu

. Jelas sekali, anda juga harus memberikan kelayakan yang anda perlukan untuk sambungan Yii. testdrive

Langkah 2

Dalam Yii, setiap jadual pangkalan data harus mempunyai kelas model jenis yang sepadan CActiveRecord. Kelebihannya ialah kita tidak perlu memproses jadual pangkalan data secara langsung. Sebaliknya, kita boleh menggunakan objek model yang sepadan dengan baris yang berlainan dalam jadual. Sebagai contoh, kelas Post adalah model jadual posts. Objek kelas ini mewakili baris dari jadual posts dan mempunyai atribut yang mewakili nilai lajur. Untuk menghasilkan model dengan cepat, kami akan menggunakan alat berasaskan web Yii gii. Alat ini boleh digunakan untuk menjana model, pengawal, dan bentuk untuk operasi CRUD. Untuk menggunakan gii dalam projek anda, cari yang berikut dalam fail konfigurasi aplikasi dan pasangkannya dan tambahkan kata laluan.

<code class="language-bash"><yiiroot>/framework/yiic webapp yiitest</yiiroot></code>

kemudian gunakan URL berikut untuk mengakses gii: http://localhost/yiitest/index.php?r=gii. Jika anda menggunakan URL mesra pengguna, URL adalah: http://localhost/yiitest/gii. Klik Model Builder. gii Anda akan diminta untuk nama jadual; Kemudian klik menjana untuk membuat model.

PHP Master | Build a CRUD App with Yii in Minutes

Semak

, di mana anda akan menemui fail protected/models. Post.php

Langkah 3

Sekarang klik pada Penjana CRUD. Masukkan nama model sebagai "pos". ID pengawal akan dihuni secara automatik sebagai "pos". Ini bermakna pengawal baru akan dijana di bawah nama

. Klik Generate. Proses ini akan menjana pengawal dan beberapa fail paparan untuk operasi CRUD. PostController.php

PHP Master | Build a CRUD App with Yii in Minutes Sekarang anda mempunyai aplikasi CRUD baru! Klik pautan "Cuba Sekarang" untuk mengujinya. Untuk menguruskan jawatan, anda perlu log masuk sebagai

. Untuk membuat siaran baru yang anda perlukan untuk melawat

, untuk mengemas kini jawatan tertentu, hanya tunjuk penyemak imbas anda ke admin/admin. Sekali lagi, anda boleh menyenaraikan semua jawatan dan memadam beberapa atau semuanya. http://localhost/yiitest/post/create http://localhost/yiitest/post/update/postID

Kesimpulan

Yii sangat kuat dalam membangunkan projek Web 2.0. Sebenarnya, kita hanya melihat betapa mudahnya untuk mewujudkan sistem CRUD berfungsi sepenuhnya dalam beberapa minit! Jelas sekali, Yii dapat menjimatkan banyak kerja kerana anda tidak perlu bermula dari awal. Yii memberikan kita asas yang kita dapat berkembang seperti yang diperlukan.

(bahagian FAQ berikutnya terlalu panjang, disyorkan untuk menyusunnya ke dalam dokumen yang berasingan.)

Atas ialah kandungan terperinci PHP Master | Bina aplikasi CRUD dengan Yii dalam beberapa minit. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn