{"id":682,"date":"2026-07-08T19:40:35","date_gmt":"2026-07-08T12:40:35","guid":{"rendered":"https:\/\/www.bisasoftware.id\/2026\/?p=682"},"modified":"2026-07-08T19:40:35","modified_gmt":"2026-07-08T12:40:35","slug":"bab-8-2b-1-variable-scope-ruang-lingkup-variabel","status":"publish","type":"post","link":"https:\/\/www.bisasoftware.id\/2026\/bab-8-2b-1-variable-scope-ruang-lingkup-variabel\/","title":{"rendered":"BAB 8.2B-1 \u2013 VARIABLE SCOPE (RUANG LINGKUP VARIABEL)"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">Tujuan Pembelajaran<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Setelah mempelajari bab ini, peserta didik diharapkan mampu:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Menjelaskan pengertian Variable Scope.<\/li>\n\n\n\n<li>Memahami Local Scope.<\/li>\n\n\n\n<li>Memahami Global Scope.<\/li>\n\n\n\n<li>Menggunakan keyword <code>global<\/code>.<\/li>\n\n\n\n<li>Menggunakan array <code>$GLOBALS<\/code>.<\/li>\n\n\n\n<li>Memahami Static Variable.<\/li>\n\n\n\n<li>Menentukan jenis scope yang tepat sesuai kebutuhan.<\/li>\n\n\n\n<li>Menerapkan Variable Scope dalam studi kasus aplikasi sederhana.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Pendahuluan<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Pada bab sebelumnya kita telah mempelajari cara membuat function.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Perhatikan contoh berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction salam()\n{\n    echo \"Halo Dunia\";\n}\n\nsalam();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Program tersebut berjalan dengan baik.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Namun bagaimana jika kita mempunyai variabel seperti berikut?<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nama = \"Andi\";\n\nfunction tampilkan()\n{\n    echo $nama;\n}\n\ntampilkan();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Apakah program akan menampilkan:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Andi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Jawabannya adalah <strong>tidak<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mengapa?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Karena variabel mempunyai <strong>ruang lingkup (scope)<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Apa itu Variable Scope?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Variable Scope adalah <strong>cakupan atau wilayah di mana sebuah variabel dapat digunakan<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Setiap variabel yang dibuat di PHP memiliki batas penggunaan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ilustrasi sederhana:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Program\n\n\u2502\n\n\u251c\u2500\u2500 Variabel Global\n\u2502\n\u251c\u2500\u2500 Function A\n\u2502      \u2514\u2500\u2500 Variabel Local\n\u2502\n\u251c\u2500\u2500 Function B\n\u2502      \u2514\u2500\u2500 Variabel Local\n\u2502\n\u2514\u2500\u2500 Function C\n       \u2514\u2500\u2500 Variabel Local<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Artinya:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Variabel global berada di luar function.<\/li>\n\n\n\n<li>Variabel local berada di dalam function.<\/li>\n\n\n\n<li>Keduanya memiliki aturan penggunaan yang berbeda.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Jenis Variable Scope<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">PHP memiliki beberapa jenis ruang lingkup variabel:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Local Scope<\/li>\n\n\n\n<li>Global Scope<\/li>\n\n\n\n<li>Static Scope<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Pada bab ini ketiga jenis tersebut akan dipelajari secara bertahap.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Local Scope<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Pengertian<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Local Scope adalah variabel yang dibuat <strong>di dalam function<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Variabel ini hanya dapat digunakan oleh function tersebut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction biodata()\n{\n    $nama = \"Andi\";\n\n    echo $nama;\n}\n\nbiodata();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Andi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Program berjalan normal.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Variabel Local Tidak Dapat Diakses dari Luar Function<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Perhatikan contoh berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction biodata()\n{\n    $nama = \"Andi\";\n}\n\nbiodata();\n\necho $nama;\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Undefined variable $nama<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Mengapa?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Karena <code>$nama<\/code> hanya hidup di dalam function <code>biodata()<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Begitu function selesai dijalankan, variabel tersebut tidak dapat diakses lagi.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Setiap Function Memiliki Variabel Sendiri<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Perhatikan contoh berikut.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction siswaA()\n{\n    $nama = \"Andi\";\n\n    echo $nama;\n}\n\nfunction siswaB()\n{\n    $nama = \"Budi\";\n\n    echo \"&lt;br&gt;\";\n\n    echo $nama;\n}\n\nsiswaA();\n\nsiswaB();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Andi\n\nBudi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Meskipun sama-sama bernama <code>$nama<\/code>, kedua variabel tersebut <strong>tidak saling memengaruhi<\/strong> karena masing-masing berada pada function yang berbeda.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Kelebihan Local Scope<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Menggunakan Local Scope memiliki beberapa keuntungan:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Variabel lebih aman.<\/li>\n\n\n\n<li>Mengurangi konflik nama.<\/li>\n\n\n\n<li>Program lebih modular.<\/li>\n\n\n\n<li>Lebih mudah dipelihara.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Karena alasan inilah programmer profesional lebih sering menggunakan variabel lokal dibandingkan variabel global.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Global Scope<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Pengertian<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Global Scope adalah variabel yang dibuat <strong>di luar function<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nama = \"Andi\";\n\necho $nama;\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Andi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Variabel ini dapat digunakan di area program utama.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Namun, apakah dapat langsung digunakan di dalam function?<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Global Scope Tidak Otomatis Masuk ke Function<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nama = \"Andi\";\n\nfunction tampilkan()\n{\n    echo $nama;\n}\n\ntampilkan();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Undefined variable $nama<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hal ini sering membingungkan programmer pemula.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Penyebabnya adalah function memiliki ruang lingkup sendiri.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Menggunakan Keyword global<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Jika ingin menggunakan variabel global di dalam function, gunakan keyword <code>global<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nama = \"Andi\";\n\nfunction tampilkan()\n{\n    global $nama;\n\n    echo $nama;\n}\n\ntampilkan();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Andi<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Keyword <code>global<\/code> memberi tahu PHP bahwa variabel tersebut berasal dari luar function.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Menggunakan Lebih dari Satu Variabel Global<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nama = \"Andi\";\n$kelas = \"XI RPL\";\n\nfunction dataSiswa()\n{\n    global $nama, $kelas;\n\n    echo $nama;\n\n    echo \"&lt;br&gt;\";\n\n    echo $kelas;\n}\n\ndataSiswa();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Andi\n\nXI RPL<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Mengubah Nilai Variabel Global<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Variabel global dapat diubah dari dalam function.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nilai = 80;\n\nfunction ubahNilai()\n{\n    global $nilai;\n\n    $nilai = 95;\n}\n\nubahNilai();\n\necho $nilai;\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>95<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Programmer harus berhati-hati karena perubahan ini akan memengaruhi seluruh program.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Mengenal Array <code>$GLOBALS<\/code><\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Selain keyword <code>global<\/code>, PHP menyediakan array khusus bernama <code>$GLOBALS<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Array ini menyimpan seluruh variabel global.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Contoh:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$a = 10;\n$b = 20;\n\nfunction jumlah()\n{\n    echo $GLOBALS&#91;'a'] + $GLOBALS&#91;'b'];\n}\n\njumlah();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>30<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Menampilkan Isi <code>$GLOBALS<\/code><\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\n$nama = \"Andi\";\n$umur = 17;\n\nprint_r($GLOBALS);\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Program akan menampilkan seluruh variabel global yang tersedia beserta informasi lain yang disediakan PHP.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Kapan Menggunakan <code>$GLOBALS<\/code>?<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Penggunaan <code>$GLOBALS<\/code> sebaiknya dibatasi pada kondisi tertentu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada aplikasi modern, penggunaan parameter dan return lebih disarankan dibandingkan terlalu banyak mengakses variabel global.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Static Variable<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Pengertian<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Biasanya variabel lokal akan <strong>hilang<\/strong> setelah function selesai dijalankan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Namun bagaimana jika kita ingin nilainya tetap tersimpan?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gunakan keyword <code>static<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Contoh Tanpa Static<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction hitung()\n{\n    $angka = 1;\n\n    echo $angka;\n\n    $angka++;\n}\n\nhitung();\n\necho \"&lt;br&gt;\";\n\nhitung();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>1\n\n1<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Mengapa selalu 1?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Karena setiap function dipanggil, variabel dibuat ulang.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Contoh Menggunakan Static<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction hitung()\n{\n    static $angka = 1;\n\n    echo $angka;\n\n    echo \"&lt;br&gt;\";\n\n    $angka++;\n}\n\nhitung();\n\nhitung();\n\nhitung();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>1\n\n2\n\n3<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nilai <code>$angka<\/code> tetap tersimpan meskipun function selesai dijalankan.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Studi Kasus 1 \u2013 Penghitung Jumlah Pengunjung<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction counter()\n{\n    static $jumlah = 0;\n\n    $jumlah++;\n\n    echo \"Pengunjung ke-\".$jumlah.\"&lt;br&gt;\";\n}\n\ncounter();\ncounter();\ncounter();\ncounter();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Pengunjung ke-1\nPengunjung ke-2\nPengunjung ke-3\nPengunjung ke-4<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Studi Kasus 2 \u2013 Nomor Antrian<\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?php\n\nfunction nomorAntrian()\n{\n    static $nomor = 100;\n\n    echo \"Nomor : \".$nomor.\"&lt;br&gt;\";\n\n    $nomor++;\n}\n\nnomorAntrian();\nnomorAntrian();\nnomorAntrian();\n\n?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Output<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Nomor : 100\nNomor : 101\nNomor : 102<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Perbandingan Jenis Scope<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Jenis<\/th><th>Lokasi<\/th><th>Dapat Diakses<\/th><\/tr><\/thead><tbody><tr><td>Local<\/td><td>Di dalam function<\/td><td>Hanya function tersebut<\/td><\/tr><tr><td>Global<\/td><td>Di luar function<\/td><td>Program utama<\/td><\/tr><tr><td>Static<\/td><td>Di dalam function<\/td><td>Nilainya tetap tersimpan antar pemanggilan function<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Best Practice Programmer<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Gunakan Local Scope Sebisa Mungkin<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Semakin sedikit variabel global, semakin mudah program dipelihara.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Hindari Terlalu Banyak Menggunakan <code>global<\/code><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Lebih baik mengirim data menggunakan parameter dan menerima hasil melalui <code>return<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Gunakan Static Hanya Bila Dibutuhkan<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Static cocok untuk penghitung (<em>counter<\/em>), cache sederhana, atau nomor urut, tetapi tidak perlu digunakan pada semua variabel.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Kesalahan yang Sering Dilakukan Pemula<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">Menganggap Variabel Global Otomatis Masuk ke Function<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>echo $nama;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">di dalam function tidak akan bekerja tanpa <code>global<\/code> atau <code>$GLOBALS<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Menggunakan Static Padahal Tidak Diperlukan<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Akibatnya nilai variabel terus bertambah dan menghasilkan hasil yang tidak diharapkan.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Terlalu Banyak Variabel Global<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Program menjadi sulit dipahami dan rawan bug karena banyak bagian dapat mengubah nilai variabel yang sama.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Latihan Praktik<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Latihan 1<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Buat function yang memiliki variabel lokal berisi nama siswa, kemudian tampilkan hasilnya.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Latihan 2<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Buat variabel global <code>$sekolah<\/code>, lalu tampilkan nilainya dari dalam function menggunakan keyword <code>global<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Latihan 3<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Gunakan <code>$GLOBALS<\/code> untuk menjumlahkan dua buah variabel global.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Latihan 4<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Buat function <code>counter()<\/code> menggunakan variabel <code>static<\/code> sehingga menghasilkan output:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>1\n2\n3\n4\n5<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Latihan 5<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Buat program yang memiliki variabel lokal dan global dengan nama yang sama. Amati perbedaannya ketika ditampilkan.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">Tugas Praktik Bab 8.2B-1<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Sistem Nomor Tiket Pelayanan<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Buat program PHP yang mensimulasikan sistem antrean pada loket pelayanan dengan ketentuan:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Gunakan variabel <code>static<\/code> untuk menyimpan nomor antrean.<\/li>\n\n\n\n<li>Buat function <code>ambilNomor()<\/code> yang akan:\n<ul class=\"wp-block-list\">\n<li>Menampilkan nomor antrean saat ini.<\/li>\n\n\n\n<li>Menambah nomor untuk pemanggilan berikutnya.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Gunakan variabel global untuk menyimpan nama instansi, misalnya:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>$instansi = \"SMK Negeri 1\";<\/code><\/pre>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>Tampilkan nama instansi dari dalam function menggunakan keyword <code>global<\/code>.<\/li>\n\n\n\n<li>Panggil function <code>ambilNomor()<\/code> minimal lima kali sehingga terlihat nomor antrean bertambah secara otomatis.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Tantangan (Opsional)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tambahkan format nomor seperti <code>A001<\/code>, <code>A002<\/code>, <code>A003<\/code>, dan seterusnya.<\/li>\n\n\n\n<li>Buat function kedua <code>resetNomor()<\/code> untuk mengembalikan nomor antrean ke nilai awal (petunjuk: materi ini akan lebih mudah diselesaikan setelah memahami konsep yang lebih lanjut pada bab berikutnya).<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Tujuan Pembelajaran Setelah mempelajari bab ini, peserta didik diharapkan mampu: Pendahuluan Pada bab sebelumnya kita telah mempelajari cara membuat function&#8230;.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kadence_starter_templates_imported_post":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[21],"tags":[38],"class_list":["post-682","post","type-post","status-publish","format-standard","hentry","category-tutorial-php","tag-tutorial-php"],"_links":{"self":[{"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/posts\/682","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/comments?post=682"}],"version-history":[{"count":1,"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/posts\/682\/revisions"}],"predecessor-version":[{"id":683,"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/posts\/682\/revisions\/683"}],"wp:attachment":[{"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/media?parent=682"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/categories?post=682"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bisasoftware.id\/2026\/wp-json\/wp\/v2\/tags?post=682"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}