Polymorphism :

Polymorphism is derived from two Greek words. Poly (meaning many) and morph (meaning forms). Polymorphism means many forms. The meaning with Object Oriented languages changes. With Object Oriented language polymorphism happens: When the decision to invoke a function call is made by inspecting the object at runtime it is called Polymorphism.

Why method polymorphism(method overloading) cannot be achieved ?

The reason why polymorphism for methods (method overloading , function with same name different signatures) is not possible in PHP is because you can have a method that accepts two parameters and call it by passing three parameters.
This is because PHP is not strict and contains methods like func_num_args() and func_get_arg() to find the number of arguments passed and get a particular parameter. Because PHP is not type strict and allows variable arguments, this is why method polymorphism is not possible.But method overriding(multiple functions with same name and same signatures) is supported in PHP.

example:
    <?php
    class BaseClass {
	    public function myMethod() {
		    echo "BaseClass method called";
	    }
    }
    class DerivedClass extends BaseClass {
	    public function myMethod() {
		    echo "DerivedClass method called";
	    }
    }
    function processClass(BaseClass $c) {
	    $c->myMethod();
    }
    $c = new DerivedClass();
    processClass($c);
    ?>
Description :

In the above example, object $c of class DerievedClass is executed and passed to the processClass() method. The parameter accepted in processClass() is that of BassClass. Within the processClass() the method myMethod() is being called. Since the method is being called on the class variable of BaseClass, it would not be wrong to assume that myMethod() of class BaseClass will be called. But, as per the definition.When the decision to invoke a function call is made by inspecting the object at runtime it is called Polymorphism, myMethod() will be called on object DerievedClass. The reason why this happens is because the object of DerievedClass is being passed and hence the method myMethod() of DerievedClass will be called.

After editing Click here:
Output:
Hello World