Nous savons que PHP est un langage faiblement typé et n'a pas de surcharge comme les langages fortement typés comme JAVA. D’après cette définition, PHP n’est pas surchargé car PHP ne permet pas que le même nom de fonction existe.
Mais ne pas l’avoir ne signifie pas que cela ne peut pas être réalisé.
1. Tout d'abord, regardons un exemple de surcharge en Java :
class demo { public static void main (String[] args) { sum(1,1);//2 sum(1,1.5);//2.5 sum(1.5,1.5);//3.0 } public static void sum(int var1,int var2){ System.out.println(var1+var2); } public static void sum(int var1,double var2){ System.out.println(var1+var2); } public static void sum(double var1,double var2){ System.out.println(var1+var2); } }
Et si nous utilisions PHP pour implémenter l'exemple ci-dessus ?
<?php function sum($var1,$var2){ echo $var1+$var2; } sum(1,1);//2 sum(1,1.5);//2.5 sum(1.5,1.5);//3 ?>
2. Paramètres facultatifs, permettant aux variables de définir des valeurs par défaut
Exemple de surcharge JAVA :
class demo { public static void main (String[] args) { sum(1,2);//3 sum(1,2,3);//6 } public static void sum(int var1,int var2){ System.out.println(var1+var2); } public static void sum(int var1,int var2,int var3){ System.out.println(var1+var2+var3); } }
Utilisation de la fonctionnalité de paramètre facultatif PHP :
<?php function sum($var1,$var2,$var3=NULL){//$var3设置默认值 echo $var1+$var2+$var3; } sum(1,2);//2 sum(1,2,3);//2.5 ?>
Vous pouvez voir la même fonction, mais elle est plus simple à implémenter dans un langage faiblement typé comme php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!