Belajar PHP OOP Part 1.26 : Static Keyword
- Kata kunci static adalah keyword yang bisa kita gunakan untuk membuat properties atau function di class bisa diakses secara langsung tanpa menginstansiasi class terlebih dahulu
- Namun ingat, saat kita buat static properties atau function, secara otomatis hal itu tidak akan berhubungan lagi dengan class instance/object yang kita buat
- Untuk cara mengakses static properties dan function sama seperti mengakses constant, kita bisa menggunakan operator ::
- Static function tidak bisa mengakses function biasa, karena function biasa menempel pada class instance sedangkan static function tidak
Static Properties
<?php
namespace Helper;
class MathHelper
{
static public string $name = "MathHelper";
}
<?php
require_once "helper/MathHelper.php";
use Helper\MathHelper;
$mathHelper = new MathHelper();
echo $mathHelper->name . PHP_EOL;
Mengakses Properties Seperti Biasa (Error)
Mengakses Statis Properties
<?php
require_once "helper/MathHelper.php";
use Helper\MathHelper;
echo MathHelper::$name . PHP_EOL;
MathHelper::$name ="Eko Kurniawan";
echo MathHelper::$name . PHP_EOL;
Static Function
<?php
namespace Helper;
class MathHelper
{
static public string $name = "MathHelper";
static public function sum(int...$numbers): int
{
$total = 0;
foreach ($numbers as $number){
$total+= $number;
}
return $total;
}
}
<?php
require_once "helper/MathHelper.php";
use Helper\MathHelper;
echo MathHelper::$name . PHP_EOL;
MathHelper::$name ="Eko Kurniawan";
echo MathHelper::$name . PHP_EOL;
$result = MathHelper::sum(10, 10, 10, 10, 10, );
echo "Result $result" . PHP_EOL;