Late Static Binding in PHP OOPS

 <?php


class Db {
    protected static $table = "baseTable";

    public function select() {
        echo "SELECT * FROM " . static::$table . "<br>";
    }

    public function insert() {
        echo "INSERT INTO " . static::$table . "<br>";
    }
}

class Abc extends Db {
    protected static $table = "abc";
}

class UserAccounts extends Db {
    protected static $table = "user_accounts";
}

$abc = new Abc();
$abc->select();
$abc->insert();

$accounts = new UserAccounts();
$accounts->select();
$accounts->insert();

// OUTPUT :
//SELECT * FROM abc
// INSERT INTO abc
// SELECT * FROM user_accounts
// INSERT INTO user_accounts

?>

Comments

Popular posts from this blog

Ajax Insert Records in Database Tutorial in PHP

Displaying Database data using Class, Object, Constructor, Destructor in PHP MySql

SubQuery with EXISTS and NOT EXISTS in PHP