Cara menggunakan php persistent variable

PHP $_GET is a PHP super global variable which is used to collect form data after submitting an HTML form with method="get".

$_GET can also collect data sent in the URL.

Assume we have an HTML page that contains a hyperlink with parameters:


Test $GET


When a user clicks on the link "Test $GET", the parameters "subject" and "web" are sent to "test_get.php", and you can then access their values in "test_get.php" with $_GET.

 pernah kan kalian di tokopedia, atau bukalapak atau toko online lainnya ketika mengetikkan angka untuk nominal dalam kategori uang auto berubah menjadi format uang? nah kali ini kita akan mencoba membuat format uang di javascript versi maz dopunk atau kalau dalam bahasa inggrisnya format money javscript. dan untuk istilahnya biasanya dikenal dengan konversi angka ke format rupiah di javascript. seperti biasa sebelum kita mulai izinkan diri ini terlebih dahulu untuk mengucapkan Salam sobat semua Alhamdulillahi robbil 'alamiin atas segala nikmat yang telah Allah berikan kepada diri ini secara gratis sehingga diri ini bisa menulis dan berbagi dalam tulisan ini dengan kalian, tak lupa sholawat serta salamku akan tetap tercurah dan terpanjatkan hanya untuk sayyidina Muhammad ibni Abdillah S.A.W. beserta keluarga dan para sahabatnya. Bismillahir rohmaanir rohiim,sebelum mulai izin bercerita sedikit asala muasal inspirasi tulisan ini, tidak sengaja kemaren saya lihat-lihat blog lama saya

$GLOBALS adalah variabel PHP super global yang digunakan untuk mengakses variabel global dari mana saja di skrip PHP (juga dari dalam fungsi atau metode).

PHP menyimpan semua variabel global dalam array yang disebut $GLOBALS [index]. Indeks memegang nama variabel.

Contoh di bawah ini menunjukkan bagaimana menggunakan variabel super global $GLOBALS:

Contoh :

<?php 
$x = 75;
$y = 25; 

function addition() {
  $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}

addition();
echo $z;
?>
  // Output : 100

Pada contoh di atas, karena z adalah variabel yang ada dalam array $GLOBALS, itu juga dapat diakses dari luar fungsi!

Sometimes it is convenient to be able to have variable variable names. That is, a variable name which can be set and used dynamically. A normal variable is set with a statement such as:

A variable variable takes the value of a variable and treats that as the name of a variable. In the above example, hello, can be used as the name of a variable by using two dollar signs. i.e.

At this point two variables have been defined and stored in the PHP symbol tree: $a with contents "hello" and $hello with contents "world". Therefore, this statement:

produces the exact same output as:

i.e. they both produce: hello world.

In order to use variable variables with arrays, you have to resolve an ambiguity problem. That is, if you write $$a[1] then the parser needs to know if you meant to use $a[1] as a variable, or if you wanted $$a as the variable and then the [1] index from that variable. The syntax for resolving this ambiguity is: ${$a[1]} for the first case and ${$a}[1] for the second.

Class properties may also be accessed using variable property names. The variable property name will be resolved within the scope from which the call is made. For instance, if you have an expression such as $foo->$bar, then the local scope will be examined for $bar and its value will be used as the name of the property of $foo. This is also true if $bar is an array access.

Curly braces may also be used, to clearly delimit the property name. They are most useful when accessing values within a property that contains an array, when the property name is made of multiple parts, or when the property name contains characters that are not otherwise valid (e.g. from json_decode() or SimpleXML).

Example #1 Variable property example

class foo {
var $bar = 'I am bar.';
var $arr = array('I am A.', 'I am B.', 'I am C.');
var $r = 'I am r.';
}

$foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "\n";
echo $foo->{$baz[1]} . "\n";

$start = 'b';
$end = 'ar';
echo $foo->{$start . $end} . "\n";

$arr = 'arr';
echo $foo->{$arr[1]} . "\n";

?>

The above example will output:


I am bar.
I am bar.
I am bar.
I am r.

Warning

Please note that variable variables cannot be used with PHP's Superglobal arrays within functions or class methods. The variable $this is also a special variable that cannot be referenced dynamically.

Pada tutorial kali ini kita akan pelajari beberapa istilah terkait function dalam PHP, yaitu variable scope, global variable, dan static variable.


Pengertian Variable Scope

Variable scope (atau ruang lingkup variabel) adalah jangkauan kode program dimana perintah program masih bisa mengakses variabel.

Jika kita mendefinisikan suatu variabel pada file PHP, maka variabel tersebut dapat diakses oleh seluruh kode program pada halaman yang sama. Namun jika variabel di definisikan di dalam sebuah function, variabel tersebut belum tentu bisa diakses dari luar function. Inilah yang dimaksud dengan variable scope.

Variabel yang di definisikan di dalam function, secara default tidak dapat diakses oleh kode program di luar function tersebut. Dan begitu juga sebaliknya, variabel yang di definisikan di luar fungsi, tidak bisa diakses dari dalam function.


Contoh Variable Scope dalam Function PHP

Untuk memahami konsep variable scope, perhatikan kode program berikut:

<?php
  $a = 5;
  
  function coba() {
    $a = 10;
    $b = 7;
  }
  
  coba();
  echo $a; // 5
  echo $b; // Warning: Undefined variable $b
?>

Pada baris 2, saya mendefinisikan variabel $a dan memberikan nilai awal 5. Kemudian membuat function coba() yang mengisi kembali variabel $a dengan nilai 10. Selain itu terdapat juga deklarasi variabel $b di dalam function ini.

Setelah memanggil function coba() di baris 9, saya memeriksa isi variabel $a dengan perintah echo $a. Ternyata nilai $a adalah 5, bukan 10!

Dan ketika ingin mengakses variabel $b, PHP mengeluarkan pesan peringatan “Warning: Undefined variable $b“. Pesan error ini menyatakan kalau variabel $b belum terdefinisi.

Hal ini terjadi karena variabel $a dan $b berada di dalam scope function coba(), sehingga tidak bisa diakses dari luar function. Atau dengan kata lain, deklarasi variabel $a dan $b di baris 5-6 hanya bisa diakses oleh perintah di dalam function itu saja.

Sekarang mari kita balik:

<?php
  $a = 5;
  
  function coba() {
    echo $a; // Warning: Undefined variable $a
  }
  
  coba();
  echo $a; // 5
?>

Di baris 5, saya ingin mengakses variabel $a dari dalam fungsi coba(), namun PHP mengeluarkan pesan “Warning: Undefined variable $a“.

Artinya, PHP tidak menemukan adanya variabel $a di dalam function coba(). Variabel $a hanya bisa diakses di luar ruang lingkup function.

Pembatasan variable scope seperti ini terkesan merepotkan, namun sebenarnya sangat berguna untuk men-isolasi penggunaan variabel agar tidak saling menimpa.

Fungsi-fungsi bawaan PHP dibuat oleh berbagai programmer dari seluruh dunia, dan mungkin saja tidak sengaja memakai nama variabel yang sama. Dengan menerapkan variable scope, masalah ini bisa di hindari.


Pengertian Global Variabel

Jika kita tetap ingin mengakses variabel yang di definisikan di luar function dan sebaliknya, tambah perintah “global” sebelum pendefenisian variabel.

Berikut contoh penggunaan keyword global di PHP:

<?php
  $a = 7;
  
  function coba() {
    global $a;
    global $b;

    $b = 15;
    echo $a;  // 7
    echo $b;  // 15
  }
  
  coba();
  echo $a; // 7
  echo $b; // 15
?>

Program ini tidak akan error seperti sebelumnya. Perintah global membuat kode di dalam function coba() bisa mengakses variabel yang di definisikan di luar function. Dan begitu pula sebaliknya, kode di luar function bisa mengakses isi variabel $a dan $b.


Pengertian Static Variabel

Static variabel adalah jenis variabel yang mempertahankan nilainya pada setiap pemanggilan function. Ini berbeda dengan variabel normal yang nilainya secara otomatis akan di-reset setelah dijalankan.

Berikut contoh penerapan static variabel dalam PHP:

<?php
  function coba() {
    static $a = 0;
    $a = $a + 1;
    return "Ini adalah pemanggilan ke-$a fungsi coba() <br>";
  }
    
  echo coba();
  echo coba();
  echo coba();
  echo coba();
?>

Cara menggunakan php persistent variable

Jika awalan perintah static pada baris 3 di hapus, variabel $a akan selalu bernilai 1, karena terdapat operasi $a = 0 dan $a = $a+1 pada setiap kali pemanggilan function coba().

Namun dengan membuat $a sebagai static variable, nilai $a akan terus dipertahankan sepanjang pemrosesan oleh PHP.

Konsep tentang variable scope, global variable dan static variable akan membantu kita dalam memahami cara kerja fungsi dalam PHP.


Selanjutnya masih tutorial tentang function, akan dibahas tentang cara pengecekan tipe data argumen untuk fungsi PHP.