Rumah >pembangunan bahagian belakang >tutorial php >PHP Master | Bina aplikasi CRUD dengan Yii dalam beberapa minit
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
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. 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/
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 Ini akan membuat aplikasi rangka yang dipanggil
, yang menunjukkan kepada contoh pengawal yang menjadikannya. Juga, jika anda mahukan URL yang mesra pengguna, anda boleh mencatatkan perkara berikut dalam
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.
Buat pangkalan data MySQL di dalamnya. Untuk tujuan artikel ini, jadual akan mempunyai hanya 3 lajur: ID, Tajuk, dan Kandungan.
. Jelas sekali, anda juga harus memberikan kelayakan yang anda perlukan untuk sambungan Yii. Langkah 2 Dalam Yii, setiap jadual pangkalan data harus mempunyai kelas model jenis yang sepadan kemudian gunakan URL berikut untuk mengakses , di mana anda akan menemui fail Langkah 3
. Klik Generate. Proses ini akan menjana pengawal dan beberapa fail paparan untuk operasi CRUD. , untuk mengemas kini jawatan tertentu, hanya tunjuk penyemak imbas anda ke
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. yiic
. Navigasi ke direktori root web dan taipkan yang berikut: <code class="language-bash"><yiiroot>/framework/yiic webapp yiitest</yiiroot></code>
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
<code class="language-php">public function actionCreate()
{
$this->render('create');
}</code>
<code class="language-php">$this->render('create', array('data' => $data_item));</code>
. Pandangan juga boleh mengakses $data
: $this
protected/config/main.php
<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
yiitest
posts
<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
<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 testdrive
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>
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.
protected/models
. Post.php
PostController.php
Sekarang anda mempunyai aplikasi CRUD baru! Klik pautan "Cuba Sekarang" untuk mengujinya. Untuk menguruskan jawatan, anda perlu log masuk sebagai
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
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!