Tipe Prefix dan Postfix dalam PHP
Sebenarnya operasi increment dan decrement
dapat ditulis dengan dua cara. Dalam bentuk postfix
operasi ditulis setelah nama variabel,
seperti ini: $a++, sedangkan dalam bentuk prefix
- sebelum nama variabel, seperti ini:
++$a. Mari kita lihat contoh-contohnya,
apa perbedaan antara kedua cara tersebut.
Dalam contoh berikut, echo pertama akan menampilkan
0, karena awalnya yang bekerja adalah penampilan
ke layar, dan baru kemudian variabel bertambah:
<?php
$num = 0;
echo $num++; // menampilkan 0, karena variabel hanya bertambah setelah echo
echo $num; // menampilkan 1 - variabel telah berubah
?>
Dan sekarang variabel akan bertambah terlebih dahulu, baru kemudian akan ditampilkan ke layar:
<?php
$num = 0;
echo ++$num; // menampilkan 1 - variabel bertambah segera
?>
Perilaku seperti ini berlaku tidak hanya untuk penampilan ke layar, tetapi juga untuk penugasan:
<?php
$num1 = 0;
$num2 = $num1++; // ke variabel $num2 akan tercatat 0
echo $num2; // menampilkan 0
echo $num1; // menampilkan 1 - variabel $num1 berubah setelah pencatatan ke $num2
?>
Dan sekarang mari ubah bentuk postfix menjadi prefix:
<?php
$num1 = 0;
$num2 = ++$num1; // ke variabel $num2 akan tercatat 1
echo $num2; // menampilkan 1
?>
Jika operasi kita dilakukan pada baris terpisah, maka tidak ada perbedaan antara bentuk prefix dan postfix:
<?php
$num = 0;
++$num;
$num++;
echo $num; // menampilkan 2
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num = 3;
echo ++$num;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num = 3;
echo $num++;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num = 3;
echo --$num;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num = 3;
echo $num--;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num1 = 3;
$num2 = ++$num1;
echo $num1;
echo $num2;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num1 = 3;
$num2 = $num1++;
echo $num1;
echo $num2;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num1 = 3;
$num2 = --$num1;
echo $num1;
echo $num2;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num1 = 3;
$num2 = $num1--;
echo $num1;
echo $num2;
?>
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
<?php
$num1 = 3;
$num1++;
$num2 = $num1--;
echo $num1++;
echo --$num2;
?>