Overloading (unlike overlay) is not supported in PHP. In OOP, you can overload a method to implement two or more methods with the same name, but with different numbers or types of arguments (which depends on the language). PHP is a loosely typed language, so it does not work through type overloading, but overloading does not work with different numbers of arguments.
Sometimes overloading constructors in OOP is great, so you can create objects in different ways (passing a different number of arguments). The trick to implementing it in PHP is:
Class Myclass {
function Myclass () {
$name = "Myclass". Func_num_args ();
$this-> $name ();
Paying attention to $this-> $name () is generally wrong, but here $name is the name of a method that will be called
}
function Myclass1 ($x) {
Code
}
function Myclass2 ($x, $y) {
Code
}
}
Using this class is transparent to the user through additional processing in the class:
$obj 1=new Myclass (' 1 '); Will call Myclass1
$obj 2=new Myclass (' 1 ', ' 2 '); Will call Myclass2
Sometimes this is very useful.