Mungkin Anda berharap mengetahui bahwa variable_set adalah cara ajaib untuk menyimpan semua jenis data terstruktur dalam database Anda, dan variable_get adalah cara untuk mengeluarkannya kembali. Sayangnya tidak.
"Variabel persisten", sebagaimana sering disebut, dimaksudkan untuk pasangan nilai kunci yang relatif sederhana yang harus bertahan di seluruh permintaan, pengguna, dan sesi, seringkali hingga admin situs mengubah nilainya. Contoh yang baik adalah nama situs.
Jadi bagaimana cara kerjanya?
Ketika Drupal di-bootstrap, semua variabel dibaca dari cache (jika tersedia) atau dari tabel variabel. (Lihat variable_initialize untuk kode yang tepat.) Variabel dan disimpan dalam $conf
variabel global , array yang sangat besar. Drupal melakukan ini karena lebih efisien daripada melakukan kueri basis data setiap kali diperlukan suatu variabel. (Itu juga alasan mengapa variable_set tidak cocok untuk gumpalan data yang besar: mereka akan dimuat pada setiap permintaan!)
Setiap kali Anda menggunakan variable_get('variable_name', 'default_value')
, nama variabel dicari dalam array $ conf. Jika ada, nilainya dikembalikan; selain itu, nilai default dikembalikan.
Akhirnya, ada anggota keluarga ketiga: variable_del . Seperti namanya, ini menghapus variabel dari tabel variabel. Fungsi ini sering digunakan dalam implementasi hook_uninstall , menghapus variabel ketika modul dihapus.
Jika Anda mencari cara untuk menyimpan struktur data khusus yang lebih kompleks dalam database, periksa hook_schema dan drupal_write_record , atau gunakan sistem entitas Drupal dan API Entitas .
variable_set()
menyebabkan cache variabel dibangun kembali, jadi itu adalah sesuatu yang biasanya disediakan untuk data yang cukup tahan lama dan konsisten seperti pengaturan admin dan sejenisnya. Atau, dengan kata lain, itu tidak boleh digunakan sebagai ganti atau seperti variabel statis antara fungsi yang berubah selama pembuatan halaman.Jika Anda menggunakan Drush (sangat disarankan), Anda dapat mengeluarkan
drush vget > variables.txt
dari baris perintah untuk membuat file teks dengan daftar semua variabel saat ini dan nilainya. Demikian pula, Anda dapat menggunakandrush vset
untuk mengubah setel variabel apa pun ke nilai yang berbeda.Lihat GitHub untuk rincian lebih lanjut tentang
variable-get
,variable-set
dan perintah yang berguna lainnya.sumber
Untuk mengatur variabel, Anda akan menggunakan variable_set () . Kemudian Anda dapat mengambilnya menggunakan variable_get () . Anda harus terbiasa dengan situs Drupal API.
Variabel, jika disimpan, dapat ditemukan dalam tabel variabel.
sumber
Kamu bisa:
sumber