Desdulianto
<?php
?>
.php
;
/* komentar multi baris */
// komentar satu baris
# komentar satu baris
null
bool
int
float
string
array
object
callable
void
never
mixed
interface
class
trait
enum
Optional
Deklarasi terhadap tipe argument ke function/method, nilai kembali (return value) function/method, class properties
Contoh:
function add(int $a, int $b): int { return $a + $b; }
Konversi tipe data secara implisit
PHP akan mencoba untuk mengkonversi tipe data apabila operasi yang dilakukan tidak didukung oleh operan dari operasi tersebut
$a = 42; $b = "3"; $c = $a + $b; echo $c; // 45
Melakukan konversi tipe data secara eksplisit
Casting yang diperbolehkan: (int), (bool), (float), (string), (array), (object)
(int)
(bool)
(float)
(string)
(array)
(object)
$a = 42.9; $b = 3.7; $c = $a + (int) $b; $d = (int) ($a + $b); echo $c; // 45.9 echo $d; // 46
$
_
$nama
$_nama
$Nama
$nama1
$nama_lengkap
nama
$1nama
$nama lengkap
$nama$
$this
Nilai yang di assign ke variable merupakan salinan dari hasil evaluasi ekspresi
$a = [1,2,3]; $b = $a; $a[0] = 10 ; // $a berubah nilainya jadi [10, 2, 3], tapi $b tetap bernilai [1,2,3]
Perubahan pada variable awal tidak mempengaruhi nilai pada variable yang di-assign dari variable awal
Nilai yang di-assign ke variable merupakan pointer yang mengacu ke nilai dari variable awal
Assignment dilakukan dengan prefix & pada variable yang di-assign
&
$a = 10; $b = &$a; $a = 100; // $a berubah nilainya jadi 100, $b karena di-assign dengan reference nilainya ikut berubah menjadi 100
Assignment terhadap object secara default selalu di-assign by reference
isset(mixed $var, mixed ...$vars): bool
unset(mixed $var, mixed ...$vars): void
$_SERVER
$_REQUEST
Untuk mengacu ke variable global di dalam function gunakan keyword global
global
$a = 1; function incrementA() { global $a; $a++; }
Variable static di-definisikan di dalam fungsi
Nilai variable static akan diingat terus ketika fungsi yang sama dipanggil berulang kali
function incrementStatic() { static $a = 0; $a++; return $a; } incrementStatic(); // 1 incrementStatic(); // 2
Menampung nilai yang tidak dapat diubah lagi selama script berjalan
Diakses tanpa prefix $
PHP versi < 8.0.0 constant didefinisikan dengan fungsi define
define
PHP versi >= 8.0.0 constant didefinisikan dengan keyword const
const
define('PI', 3.14) const VERSI = '8.3'; echo PI; // 3.14 echo VERSI; // 8.3