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

伊谢尔伦
Libérer: 2023-03-11 13:20:01
original
6380 Les gens l'ont consulté

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>";
Copier après la connexion

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."是一个字符串";
}
Copier après la connexion

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."都是字符串";
}
Copier après la connexion

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."都是字符串";
}
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!