";"/> ";">

Maison  >  Article  >  développement back-end  >  Explication détaillée de l'utilisation des valeurs par défaut des paramètres des fonctions personnalisées PHP

Explication détaillée de l'utilisation des valeurs par défaut des paramètres des fonctions personnalisées PHP

伊谢尔伦
伊谢尔伦original
2017-06-26 10:16:286433parcourir

Tout code PHP valide peut apparaître dans une fonction, même d'autres définitions de fonctions et de classes.

Les noms de fonctions ont les mêmes règles de dénomination que les autres identifiants en PHP. Les noms de fonctions valides commencent par une lettre ou un trait de soulignement, suivis de lettres, de chiffres ou de traits de soulignement.

peut être représenté par expression régulière comme : [a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*.

phpFonction personnaliséeLors de l'acceptation des paramètres, vous pouvez directement attribuer des valeurs par défaut

function TestStr($str)
{
return $str."是一个字符串";
}
echo TestStr("abcdef")."</br>";

La fonction personnalisée ci-dessus accepte un paramètre Si nous appelons TestStr () ;Quoi. cela se produira-t-il si aucun paramètre n'est donné ?

Signaler directement une erreur : Attention : argument manquant 1 pour TestStr()

Donc, dans le processus de développement, afin d'éviter les erreurs ci-dessus, nous avons généralement devez Lors de la personnalisation de la fonction, attribuez des valeurs par défaut aux paramètres, comme suit

function TestStr2($str="kkkkk")
{
return $str."是一个字符串";
}

Appelez maintenant TestStr2() sans erreur et affichez directement kkkkk sous forme de chaîne. Bien sûr, les paramètres par défaut le seront. être remplacé après avoir passé les paramètres.

Troisième cas : Lorsque

a plus de 2 paramètres, si toutes les valeurs par défaut ne sont pas données, les valeurs par défaut doivent être données dans l'ordre de droite à gauche. Ce qui suit est une erreur. L'exemple

function TestStr3($str =&#39;mmmmm&#39; ,$para)
{
return $str."和".$para."都是字符串";
}

Ce qui précède ne donne pas la valeur par défaut de droite à gauche, mais celui le plus à gauche donne une valeur par défaut.

Lorsque nous appelons la fonction TestStr3( "Premier paramètre"); Ce que nous attendons, c'est que le premier paramètre soit remplacé par la valeur par défaut et que le deuxième paramètre soit remplacé par le paramètre entrant. Mais ce n'est pas le cas. Les paramètres sont de gauche à droite. Donc la seconde Non seulement le paramètre n'a pas de valeur transmise, mais il n'a même pas de valeur par défaut, donc une erreur est signalée directement

La valeur par défaut correcte devrait être comme ça

function TestStr3($str,$para=&#39;mmmmm&#39;)
{
return $str."和".$para."都是字符串";
}

puis affichez :

Les premiers paramètres et mmmmm sont tous deux des chaînes

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn