I am surprised for why the constructor is called when we have different class and constructor name. Constructor name is starting with small \"r\"?
class Regi
php is case-insensitive (sometimes). The following would work as well:
CLASS REGISTRATION { FUNCTION reGISTration(){ ECHO "constructor is called."; } } $obj = NEW Registration();