Q:

Calling a non-static method from a static method

I think it is very basic functionality, please help.
How can I call non-static method into static-method in php.
class Country {
    public function getCountries() {
        return 'countries';
    }

    public static function countriesDropdown() {
        $this->getCountries();
    }
}

A:

Preferred way..
It is better to make the getCountries() method static instead.
<?php

class Country {
    public static function getCountries() {
        return 'countries';
    }

    public static function countriesDropdown() {
        return self::getCountries();
    }
}
$c = new Country();
echo $c::countriesDropdown(); //"prints" countries

Adding a self keyword displays the PHP Strict Standards Notice To avoid that you can create an object instance of the very same class and call the method associated with it.
Calling a non-static method from a static method
<?php

class Country {
    public function getCountries() {
        return 'countries';
    }

    public static function countriesDropdown() {
        $c = new Country();
        return $c->getCountries();
    }
}

$c = new Country();
echo $c::countriesDropdown(); //"prints" countries

