Introduction à la façon d'utiliser des tableaux comme paramètres en PHP pour optimiser les performances (code ci-joint)

不言
Libérer: 2023-04-03 14:24:02
original
3066 Les gens l'ont consulté

Lorsque nous écrivons du code PHP, nous pouvons souvent avoir besoin de mettre à niveau et de modifier le code. Des opérations aussi fréquentes augmenteront non seulement notre charge de travail, mais réduiront également les performances de l'ensemble de notre programme. Par conséquent, cet article partagera avec vous un. méthode d'utilisation de tableaux pour transmettre les paramètres de fonction PHP, ce qui optimisera les performances de l'ensemble de notre programme.

Améliorez la méthode traditionnelle de passage des paramètres de fonction PHP. L'utilisation de tableaux comme paramètres peut optimiser les performances. Veuillez consulter l'exemple ci-dessous.

Regardons d'abord une fonction personnalisée traditionnelle :

/**  
* @Purpose:     插入文本域  
* @Method Name: addInput()  
* @Parameter:    str $title        表单项标题  
* @Parameter:    str $name        元素名称  
* @Parameter:    str $value        默认值  
* @Parameter:    str $type        类型,默认为text,可选password  
* @Parameter:    str $maxlength        最长输入  
* @Parameter:    str $readonly        只读  
* @Parameter:    str $required        是否必填,默认为false,true为必填  
* @Parameter:    str $check        表单验证function(js)名称  
* @Parameter:    str $id            元素id,无特殊需要时省略  
* @Parameter:    int $width        元素宽度,单位:象素  
* @Parameter:    str $tip        元素提示信息  
* @Return:        
*/  
function addInput($title,$name,$value="",$type="text",$maxlength="255",$readonly,$required="false",$check,$id,$width,$tip)  
{  
    $this->form .= "<li>\n";  
    $this->form .= "<label>".$title.":</label>\n";  
    $this->form .= "<input name=\"".$name."\" value=\"".$value."\" type=\"".$type."\" maxlength=\"".$maxlength."\" required=\"".$required."\" check=\"".$check."\" id=\"".$id."\" class=\"input\" ".$readonly." style=\"width:".$width."px;\" showName=\"".$title."\" /> ";  
    $this->form .= "<span class=\"tip\">".$tip."</span>\n";  
    $this->form .= "</li>\n";  
}
Copier après la connexion

Il s'agit d'une fonction qui insère une zone de texte dans la classe de formulaire que j'ai écrite.

La méthode d'appel de la méthode de passage des paramètres de la fonction PHP est

$form->addInput("编码","field0","","text",3,"");
Copier après la connexion

Au début, seuls $title, $name, $value, $type, $maxlength, $readonly et les autres paramètres sont réservés. . Après un certain temps, après l'avoir utilisé, il a été constaté que ces paramètres de base ne pouvaient pas répondre aux besoins. La zone de texte nécessite une vérification js, le style CSS doit être défini, des informations d'invite doivent être ajoutées, etc...

Ajout de $required, $check, $id, $width , $tip et d'autres paramètres, il a été découvert plus tard que tous les appels précédents à cette fonction devaient être modifiés, ce qui augmentait beaucoup de travail

<. 🎜>La méthode d'appel de la méthode de passage des paramètres de la fonction PHP est devenue

$form->addInput("编码","field0","","text",3,"","true","","",100,"提示:编号为必填项,只能填写3位");
Copier après la connexion
Si S'il y a de nombreux endroits où cette fonction est utilisée, il faudra vraiment beaucoup de temps pour changer chacun d'entre eux

<. 🎜>

La fonction améliorée :

La méthode appelante devient
function addInput($a)  
{  
    if(is_array($a))  
    {  
        $title        = $a[&#39;title&#39;];  
        $name        = $a[&#39;name&#39;];  
        $value        = $a[&#39;value&#39;] ? $a[&#39;value&#39;] : "";  
        $type        = $a[&#39;type&#39;] ? $a[&#39;type&#39;] : "text";  
        $maxlength    = $a[&#39;maxlength&#39;] ? $a[&#39;maxlength&#39;] : "255";  
        $readonly    = $a[&#39;readonly&#39;] ? $a[&#39;readonly&#39;] : "";  
        $required    = $a[&#39;required&#39;] ? $a[&#39;required&#39;] : "false";  
        $check        = $a[&#39;check&#39;];  
        $id        = $a[&#39;id&#39;];  
        $width        = $a[&#39;width&#39;];  
        $tip        = $a[&#39;tip&#39;];  
    }  
    $title,$name,$value="",$type="text",$maxlength="255",$readonly,$required="false",$check,$id,$width,$tip  
    $this->form .= "<li>\n";  
    $this->form .= "<label>".$title.":</label>\n";  
    $this->form .= "<input name=\"".$name."\" value=\"".$value."\" type=\"".$type."\" maxlength=\"".$maxlength."\" required=\"".$required."\" check=\"".$check."\" id=\"".$id."\" class=\"input\" ".$readonly." style=\"width:".$width."px;\" showName=\"".$title."\" /> ";  
    $this->form .= "<span class=\"tip\">".$tip."</span>\n";  
    $this->form .= "</li>\n";  
}
Copier après la connexion

Après avoir comparé les méthodes de passage des paramètres de la fonction PHP avant et après, on peut trouver :
$form->addInput(  
    array(  
        &#39;title&#39; = "编码",  
        &#39;name&#39; = "field0",  
        &#39;maxlength&#39; = 3,  
        &#39;required&#39; = "true",  
        &#39;width&#39; = 100,  
        &#39;tip&#39; = "提示:编号为必填项,只能填写3位",  
    )  
);
Copier après la connexion

Les fonctions traditionnelles nécessitent de nombreux changements lorsqu'elles doivent être étendues, et elles doivent être écrites dans l'ordre des paramètres lorsqu'elles sont utilisées, ce qui est facile à commettre des erreurs.

Lorsque l'amélioration La fonction est étendue, de nouveaux paramètres peuvent être ajoutés à tout moment. Il vous suffit d'ajouter la valeur de clé de tableau correspondante lors de l'appel. Chaque paramètre est clair en un coup d'œil, sans avoir à considérer l'ordre, et la lisibilité du code est améliorée.

Cependant, l'amélioration de la méthode de passage des paramètres de fonction PHP présente encore des lacunes. La quantité de code a augmenté, obligeant les programmeurs à écrire beaucoup plus de valeurs clés, et les instructions de jugement et les instructions d'opération ternaires dans la fonction peuvent affecter l'efficacité.

Articles connexes recommandés :

Analyse d'exemples de fonctions PHP et de paramètres passés


PHP dans les fonctions Passage et réception de paramètres dans le corps

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!