cari
Rumahpembangunan bahagian belakangtutorial phpPHP 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

  • 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:

<yiiroot>/framework/yiic webapp yiitest

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:
public function actionCreate()
{
    $this->render('create');
}

Dalam fail paparan, kita boleh mengakses data melalui pembolehubah
$this->render('create', array('data' => $data_item));
. 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
'urlManager'=>array(    
    'urlFormat'=>'path',
    'rules'=>array(
        '<w>/<d>'=>'<controller>/view',
        '<w>/<w>/<d>'=>'<controller>/<action>',
        '<w>/<w>'=>'<controller>/<action>',
    )
)
.

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 (
CREATE TABLE posts (
    id INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
    title VARCHAR(100),
    content TEXT
)
) dan uncomment yang berikut:

protected/config/main.php

Ganti
'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=yiitest',
'emulatePrepare' => true,
'username' => 'root',
'password' => '',
'charset' => 'utf8',
)
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.

<yiiroot>/framework/yiic webapp yiitest

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
Bagaimanakah PHP mengenal pasti sesi pengguna?Bagaimanakah PHP mengenal pasti sesi pengguna?May 01, 2025 am 12:23 AM

Phpidentifierauser'sSessionusingSessionCookiesandSessionIds.1) whensession_start () ISCALLED, phpGeneratesAuniquesessionIdstoredinacookienamedPhpsessidontheUserer'sBrowser.2) ThisIdallowsPhptoretRievesSessionDataFromtheserver.

Apakah beberapa amalan terbaik untuk mendapatkan sesi PHP?Apakah beberapa amalan terbaik untuk mendapatkan sesi PHP?May 01, 2025 am 12:22 AM

Keselamatan sesi PHP boleh dicapai melalui langkah -langkah berikut: 1. Gunakan session_regenerate_id () untuk menjana semula ID sesi apabila pengguna log masuk atau merupakan operasi penting. 2. Sulitkan ID sesi penghantaran melalui protokol HTTPS. 3. Gunakan session_save_path () untuk menentukan direktori selamat untuk menyimpan data sesi dan menetapkan kebenaran dengan betul.

Di manakah fail sesi php disimpan secara lalai?Di manakah fail sesi php disimpan secara lalai?May 01, 2025 am 12:15 AM

PhpsessionFileSarestoredIntHedirectorySpecifiedBySession.save_path, biasanya/tmponunix-likesystemsorc: \ windows \ temponwindows.tocustomethis: 1) usession_save_path ()

Bagaimana anda mengambil data dari sesi PHP?Bagaimana anda mengambil data dari sesi PHP?May 01, 2025 am 12:11 AM

ToretrievedataFromaphpsession, startTheSessionWithSsion_start () andaccessVariablesInthe $ _SessionArray.Forexample: 1) startTheSession: session_start ()

Bagaimana anda boleh menggunakan sesi untuk melaksanakan keranjang belanja?Bagaimana anda boleh menggunakan sesi untuk melaksanakan keranjang belanja?May 01, 2025 am 12:10 AM

Langkah -langkah untuk membina sistem keranjang belanja yang cekap menggunakan sesi termasuk: 1) Memahami definisi dan fungsi sesi. Sesi ini adalah mekanisme penyimpanan sisi pelayan yang digunakan untuk mengekalkan status pengguna merentasi permintaan; 2) melaksanakan pengurusan sesi asas, seperti menambah produk ke keranjang belanja; 3) memperluas penggunaan lanjutan, menyokong pengurusan kuantiti produk dan penghapusan; 4) Mengoptimumkan prestasi dan keselamatan, dengan berterusan data sesi dan menggunakan pengecam sesi yang selamat.

Bagaimana anda membuat dan menggunakan antara muka dalam PHP?Bagaimana anda membuat dan menggunakan antara muka dalam PHP?Apr 30, 2025 pm 03:40 PM

Artikel ini menerangkan cara membuat, melaksanakan, dan menggunakan antara muka dalam PHP, memberi tumpuan kepada manfaat mereka untuk organisasi kod dan penyelenggaraan.

Apakah perbezaan antara crypt () dan password_hash ()?Apakah perbezaan antara crypt () dan password_hash ()?Apr 30, 2025 pm 03:39 PM

Artikel ini membincangkan perbezaan antara crypt () dan password_hash () dalam php untuk hashing kata laluan, memberi tumpuan kepada pelaksanaan, keselamatan, dan kesesuaian untuk aplikasi web moden.

Bagaimanakah anda dapat mencegah skrip lintas tapak (XSS) dalam PHP?Bagaimanakah anda dapat mencegah skrip lintas tapak (XSS) dalam PHP?Apr 30, 2025 pm 03:38 PM

Artikel membincangkan mencegah skrip lintas tapak (XSS) dalam PHP melalui pengesahan input, pengekodan output, dan menggunakan alat seperti OWASP ESAPI dan pembersih HTML.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.