Di dalam Yii Framework, semua komponennya berbasis object oriented. Oleh karena itu, penggunaan variabel global ala PHP tidak akan ditemukan di dalam Yii Framework. Kalau begitu, jika kita betul-betul memerlukan variabel global, apa yang harus kita lakukan?
Di dalam pemograman PHP, kita bisa menggunakan variabel global dengan sintaks global. Otomatis variabel tersebut dikenali di semua file PHP. Tetapi menggunakan variabel global dalam pemograman orientasi objek adalah tabu. Walaupun tabu, bukan berarti Yii tidak memberi kesempatan kepada programmer untuk membuat variabel yang sifatnya mirip variabel global.
Jika Anda perhatikan pada file konfigurasi di webroot/protected/config/main.php, dan melihat di bagian paling bawah, maka Anda akan menemukan koding yang ditulis kurang lebih seperti begini:
'params'=>array( 'adminEmail'=>'[email protected]', ),
Nah! Parameter di dalam konfig dapat kita manfaatkan sebagai variabel global. Sebab kita bisa mengakses nilai variabel tersebut di mana saja yang kita inginkan dengan cara:
Yii::app()->params['adminEmail']
atau
Yii::app()->params->adminEmail;
Dan kita diperbolehkan untuk mengubah nilai param dengan cara mengubah langsung seperti begini:
Yii::app()->params['adminEmail'] = '[email protected]';
Tentu saja adanya fitur ini di Yii sangat bermanfaat tetapi juga bisa sangat berbahaya jika tidak cara penggunaannya tidak diwaspadai. Mengingat sifatnya yang mirip dengan variabel global, jika menggunakan fitur param secara berlebihan bisa-bisa menyebabkan koding aplikasi Yii Anda menjadi spaghetti code. Oleh karena itu, pergunakanlah fitur ini dengan penuh hati-hati.
FIND US