扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
本篇内容介绍了“PHP函数参数传递方法怎么改进”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联建站是专业的韶关网站建设公司,韶关接单;提供成都网站建设、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行韶关网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
当我们在写PHP代码的时候,经常会需要对代码进行多次的升级更改等,这样来回不断的重复修改参数,会使我们的整个程序性能降低,并增加了不少的工作量。我们今天就为大家介绍一下是使用数组进行PHP函数参数传递方法的赶紧。
本人在经历了多次重复操作之后决定改进一下传统PHP函数参数传递方法,使用数组作为参数,请看下面的例子.
先看一个传统的自定义函数
/**
* @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 .= "
- \n";
$this->form .= "\n";
$this->form .= " 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 .= " class=\"tip\">".$tip."\n";
- \n";
$this->form .= "
}
这是我写的表单类中一个插入文本框的函数.
PHP函数参数传递方法的调用方法为
$form->addInput("编码","field0","","text",3,"");
在开始的时候只预留了$title,$name,$value,$type,$maxlength,$readonly等参数,经过一段时间的使用,发现这些基本参数无法满足需求,文本框需要有js验证,需要定义CSS样式,需要增加提示信息等...
增加了$required,$check,$id,$width,$tip等参数之后发现以前所有调用此函数的地方都需要修改,增加了很多工作量.
PHP函数参数传递方法的调用方法变成
$form->addInput("编码","field0","","text",3,"","true",""
,"",100,"提示:编号为必填项,只能填写3位");
如果使用这个函数的地方很多的话一个一个改确实需要很长时间.
下面是我改进之后的函数
function addInput($a) { if(is_array($a)) { $title = $a['title']; $name = $a['name']; $value = $a['value'] ? $a['value'] : ""; $type = $a['type'] ? $a['type'] : "text"; $maxlength = $a['maxlength'] ? $a['maxlength'] : "255"; $readonly = $a['readonly'] ? $a['readonly'] : ""; $required = $a['required'] ? $a['required'] : "false"; $check = $a['check']; $id = $a['id']; $width = $a['width']; $tip = $a['tip']; } $title,$name,$value="",$type="text",$maxlength="255",$readonly,$required="false",$check,$id,$width,$tip $this->form .= "
调用方法变为
$form->addInput( array( 'title' = "编码", 'name' = "field0", 'maxlength' = 3, 'required' = "true", 'width' = 100, 'tip' = "提示:编号为必填项,只能填写3位", ) );
经过前后PHP函数参数传递方法的对比可以发现:
传统的函数在需要扩展的时候改动量大,使用的时候必须按参数的顺序写,很容易出错.
改进后的函数扩展的时候可以随时增加新参数,只需要在调用时增加对应的数组键值,每个参数都一目了然,无需考虑顺序,代码可读性增强.
不过PHP函数参数传递方法的改进还是有缺点的,代码量增大了,需要程序员多写很多键值,还有就是函数中判断语句和三元运算语句可能会影响效率.
“PHP函数参数传递方法怎么改进”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流