Sebelum menyentuh Yii, kalian perlu menguasai dasar PHP OOP dengan namespace, Composer, serta SQL dan konsep MVC. Di episode ini kalian juga menyiapkan PHP 8.2+ (untuk Yii3) atau 7.4+ (untuk Yii2), Composer 2.x, dan database, lalu memverifikasi seluruh environment siap dipakai sepanjang series.

Selamat datang di series Belajar Yii! Series ini akan membawa kalian menguasai Yii — framework PHP berperforma tinggi berbasis MVC dengan Active Record, Gii (code generator), dan keamanan built-in — untuk membangun aplikasi bisnis, admin panel, dan aplikasi enterprise. Total ada 27 episode yang tersusun dalam enam fase, dari fondasi konsep sampai production readiness.
Sebelum menjalankan composer create-project yiisoft/yii2-app-basic, ada skill dasar dan perangkat yang wajib kalian siapkan. Mengapa prasyarat ini penting? Karena Yii adalah framework yang berjalan di atas prinsip PHP modern: ia mengandalkan namespace dan autoloading untuk memetakan class, Composer untuk mengelola dependensi, serta Active Record yang menerjemahkan tabel database menjadi object PHP. Tanpa memahami lapisan-lapisan ini, kalian akan kesulitan membaca kode framework atau mendiagnosis error yang muncul.
Episode 0 ini adalah peta jalan kalian: kita akan memastikan skill dasar terpenuhi, menyiapkan PHP, Composer, database, dan editor, lalu memverifikasi environment untuk pertama kali. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman.
Yii adalah framework OOP murni. Hampir semua yang kalian sentuh — model, controller, component — adalah class PHP dengan namespace. Kalian wajib nyaman dengan namespace (karena seluruh kode app hidup di app\...), autoloading (bagaimana Composer menghubungkan nama class ke file), serta perbedaan interface (kontrak) dan trait (bagian kode yang dipakai ulang).
<?php
namespace app\models;
use yii\db\ActiveRecord;
class Post extends ActiveRecord
{
public static function tableName(): string
{
return 'posts';
}
}Perhatikan use yii\db\ActiveRecord: di sinilah autoloading bekerja. Nama app\models\Post dipetakan oleh Composer ke file models/Post.php — tanpa pemahaman ini, error class not found akan terasa seperti teka-teki yang tidak bisa dipecahkan.
Composer adalah kunci ekosistem PHP — analog dengan npm untuk Node.js. Yii sendiri diinstall melalui Composer, dan seluruh dependensi (framework inti, package pihak ketiga seperti yii2-queue, yii2-redis) dikelola di composer.json dan composer.lock. Kalian wajib paham tiga perintah inti:
composer install # install dependensi dari composer.lock
composer update # update ke versi terbaru sesuai constraint
composer require vendor/pkg # tambah dependensi barucomposer install di production harus memakai --no-dev dan --optimize-autoloader — detail lengkapnya kita bahas di episode 22.
Active Record memang menyembunyikan SQL, tapi kalian wajib paham relasi tabel, primary/foreign key, dan dasar SQL seperti SELECT, INSERT, UPDATE, DELETE. Bayangkan Active Record sebagai asisten: ia menuliskan SQL untuk kalian, tapi jika kalian tidak paham relasi database, kalian tidak akan tahu query apa yang seharusnya dihasilkan — dan bakal kebingungan saat query berjalan lambat.
Selain itu, pahami MVC: Model (data + logika bisnis), View (tampilan), Controller (penghubung request ke model dan view). Yii menegakkan pola ini dengan tegas lewat struktur folder models/, views/, controllers/ — kita bedah penuhnya di episode 2 dan 4.
Series ini berjalan dalam dua dunia: Yii2 sebagai target utama kita (mature, ekosistem terbesar, banyak dipakai di production) dan Yii3 yang akan kita bedah di episode 23 dan 25. Syarat versi PHP-nya berbeda:
Cek versi kalian:
php -v
composer --versionJika belum ada, install lewat package manager distro kalian (Ubuntu: sudo apt install php8.3-cli php8.3-mbstring ...), atau lewat manajer PHP modern seperti FrankenPHP / phpbrew / package manager sesuai OS. Pastikan juga ekstensi PHP wajib aktif: pdo, pdo_mysql, mbstring, openssl, tokenizer, xml, curl, dan fileinfo.
Install Composer global sekali:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
composer --versionUntuk praktik, siapkan salah satu dari SQLite (tanpa server, paling mudah untuk lab), MySQL/MariaDB, atau PostgreSQL. MySQL/PostgreSQL akan menjadi target utama mulai episode 6 (migrations), jadi idealnya install yang salah satu langsung. Kalian bisa menyiapkannya bertahap.
Yii sangat diuntungkan editor dengan IntelliSense PHP yang kuat. VS Code dengan ekstensi PHP Intelephense adalah kombinasi paling umum, ditambah ekstensi untuk PHP Namespace Resolver (auto-import use). Ini bukan sekadar kenyamanan — navigasi "Go to Definition" ke kode framework sangat membantu saat debugging.
Sebelum lanjut ke episode 1, jalankan verifikasi menyeluruh:
php -v
composer --version
php -m | grep -E "pdo|mbstring|openssl|tokenizer|xml|curl"php -v harus menampilkan versi 7.4 ke atas (idealnya 8.2+), composer --version menampilkan Composer 2.x, dan ekstensi wajib di atas harus muncul di daftar module. Jika ada yang hilang, install ekstensinya dulu — tanpa pdo, Yii tidak bisa terhubung ke database.
Tip
Jika kalian memakai stack LAMP/Laragon/XAMPP atau sudah punya PHP versi lain, selama versinya 7.4+ dan Composer-nya jalan, environment kalian tetap valid. Hanya saja, ingat: mulai episode 23 kita memakai Yii3 yang wajib PHP 8.2+ — jadi jika punya pilihan, install yang paling baru.
Rangkuman yang sudah kalian siapkan di episode 0:
use.php -v, composer --version, dan cek ekstensi semua lolos.Jika ada yang belum terpenuhi, berhenti dulu dan lengkapi sebelum melanjutkan. Perjalanan 26 episode ke depan akan jauh lebih lancar dengan pijakan yang kuat ini.
Inti yang harus dibawa pulang:
php -v dan composer --version sebelum praktik.Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa kalian membutuhkan Yii — dari lahirnya sebagai proyek Qiang Xue pada 2008 dengan nama "Yes It Is", evolusi Yii 1.1 → Yii 2.0 (2014) → Yii3 (31 Desember 2025), dan alasan di tahun 2026 Yii masih menjadi pilihan kuat untuk aplikasi enterprise. Pastikan environment kalian sudah siap, karena perjalanan Belajar Yii baru saja dimulai!