Variabel PHP - Tekajebe

Latest

Membahas Teknologi dan Tugas Sekolah


Thursday, April 27, 2017

Variabel PHP

Tekajebe - Variabel di PHP diwakili oleh tanda dollar diikuti dengan nama variabel. Nama variabelnya case-sensitive. Nama variabel mengikuti aturan yang sama seperti label lainnya di PHP. Nama variabel yang valid dimulai dengan huruf atau garis bawah, diikuti oleh sejumlah huruf, angka, atau garis bawah.

Secara default, variabel selalu ditentukan oleh nilai. Artinya, ketika Anda menetapkan ekspresi ke variabel, seluruh nilai dari ekspresi asli akan disalin ke variabel tujuan. Ini berarti, misalnya, bahwa setelah menetapkan satu nilai variabel ke variabel lainnya, mengubah salah satu dari variabel tersebut tidak akan berpengaruh pada variabel lainnya.

PHP juga menawarkan cara lain untuk menetapkan nilai pada variabel. Ini berarti bahwa variabel baru hanya referensi dengan kata lain, "menjadi alias untuk" atau "menunjuk ke" variabel asli. Perubahan pada variabel baru mempengaruhi yang asli, dan sebaliknya.

Baca Juga : Perintah Dasar PHP 
Baca Juga : Dasar-Dasar HTML

Untuk menetapkan dengan referensi, tambahkan sedikit ampersand (&) ke awal variabel yang ditugaskan (variabel sumber). Misalnya, contoh kode berikut menampilkan 'My name is Bob' dua kali.

contoh kode berikut menampilkan 'My name is Bob' dua kali.

Satu hal penting yang perlu diperhatikan adalah bahwa hanya variabel yang diberi nama yang dapat ditentukan dengan referensi.

Variabel PHP

Tidak perlu menginisialisasi variabel di PHP namun ini adalah praktik yang sangat bagus. Variabel yang tidak diinisiasi memiliki nilai default dari jenisnya tergantung pada konteks penggunaannya - boolean default menjadi FALSE, integer dan floats default menjadi nol, string (misalnya yang digunakan pada echo ()) ditetapkan sebagai string kosong dan array menjadi Sebuah array kosong.


Mengandalkan nilai default dari variabel yang tidak diinisiasi bermasalah dalam kasus memasukkan satu file ke file lain yang menggunakan nama variabel yang sama. Ini juga merupakan risiko keamanan utama dengan register_globals diaktifkan. Kesalahan tingkat E_NOTICE dikeluarkan jika bekerja dengan variabel yang tidak diinisiasi, namun tidak dalam kasus menambahkan elemen ke array yang tidak diinisiasi. Isset () membangun bahasa dapat digunakan untuk mendeteksi jika sebuah variabel telah diinisialisasi.

Lingkup variabel / Variabel scope
Ruang lingkup variabel adalah konteks di mana ia didefinisikan. Untuk sebagian besar semua variabel PHP hanya memiliki satu ruang lingkup. Lingkup lingkup ini termasuk dan file yang dibutuhkan juga.

Disini variabel $a akan tersedia dalam skrip b.inc yang disertakan. Namun, dalam fungsi yang ditentukan pengguna, ruang lingkup fungsi lokal diperkenalkan. Variabel yang digunakan di dalam fungsi secara default dibatasi pada lingkup fungsi lokal. Sebagai contoh:

variabel scope

The global keyword / Kata kunci global
Pertama, contoh penggunaan global:

contoh penggunaan global

Script di atas akan menampilkan 3. Dengan mendeklarasikan $ a dan $ b global dalam fungsi ini, semua referensi ke variabel akan merujuk ke versi global. Tidak ada batasan jumlah variabel global yang dapat dimanipulasi oleh sebuah fungsi.

Menggunakan variabel statik
Fitur penting lain dari scoping variabel adalah variabel statis. Sebuah variabel statis hanya ada dalam lingkup fungsi lokal, namun tidak kehilangan nilainya saat eksekusi program meninggalkan lingkup ini. Perhatikan contoh berikut ini:

variabel statis

Fungsi ini cukup berguna karena setiap kali disebut itu menetapkan $ a sampai 0 dan mencetak 0. $ a ++ yang menambah variabel tidak berfungsi karena begitu fungsi keluar dari $ a variable menghilang.

Referensi dengan variabel global dan statis
Zend Engine 1, yang mengendarai PHP 4, menerapkan pengubah statis dan global untuk variabel dalam hal referensi. Misalnya, variabel global sejati yang diimpor di dalam lingkup fungsi dengan pernyataan global benar-benar menciptakan referensi ke variabel global. Hal ini dapat menyebabkan perilaku tak terduga yang ditunjukkan oleh contoh berikut:

Referensi dengan variabel global dan statis

Contoh di atas akan menampilkan:

NULL
object(stdClass)(0) {
}

No comments:

Post a Comment