首页 > 后端开发 > PHP问题 > php传参的方法有哪些?

php传参的方法有哪些?

coldplay.xixi
发布: 2023-03-02 21:58:01
原创
4958 人浏览过

php传参的方法有:1、调用者直接传参,无需对参数进行处理加工;2、把参数组合成一个数组的形式,整一个数组当做参数进行传递;3、传递一个数据结构对象当做参数。

php传参的方法有哪些?

php传参的方法有:

第一种

直接传参,每个参数一个个的排好队写上,例如:

e413950ac3212d6ee13da766094fdaa.png

优点:

  • 传入的参数清晰,明确可以知道传入参数有多少个,分别代表什么意思,从语义上一目了然。

  • 调用方便,调用者直接传参,无需对参数进行处理加工。

  • 对新手来说更加友好,更容易理解。

缺点:

  • 形参太多,代码失去了美感,太随性了。

  • 当某个参数需要改动的时候,简直是牵一发而动全身,比如$param5改为选填参数,并且默认值为test:

6c742979cc3f87876d7440157618447.png

缺点很明显,这个时候由于php参数顺序的问题,选填参数必须在最后,所以所有调用者都需要起码把原来的param5去除,放在参数最后位置,改动代价高。

总结:当参数少的时候,可以使用直接一个个参数传递,这样是最好的,但是当参数过多,或者改动需求大的时候,这种方法无疑是繁重的。

所以针对上面这种,当参数数量过多的时候,可以使用方法二:

第二种

把参数组合成一个数组的形式,整一个数组当做参数进行传递。例如:

c15b37329da6918b1a947840dedf7ef.png

优点:

  • 代码更加整洁了。

  • 代码更加灵活,现在就算有一个参数需要改动,也无需修改函数的参数,只需要在调用者处增加参数即可。

缺点:

  • 没有了php的语法限制。例如没有了string这种的类型限制,没有了带默认值的选填参数的语法限制。这样子就需要你做多一层参数的检查。

  • 参数可读性差了。函数的数组里面有哪些参数是不能通过形参看出来的,需要查看调用者的数组组成。

总结:总体来说这种方法可以解决第一种传参方式的弊端,但是也自身带来了更加大的弊端,参数的限制需要另外增加一层钩子去处理,可以说是性价比比较低的一种方法。

综合上面两种方法的利弊,我总结出第三种传参方式:

第三种

传递一个数据结构对象当做参数,例如:

32d1c534137fcd14ea3f2f4df43af9d.png

优点:

  • 参数为一个数据结构,保证数据的完整性。就是传进来的数据结构必然能包含所需的参数。

  • 当参数需要更加或者减少的时候,只需要修改数据结构模型的对象属性即可。

  • 把数据的控制和限制可以统一放在模型层进行处理。

缺点:

  • 可能需要多个数据结构模型。

总结:总体来说这种方法可以比较全面的解决第一第二种方法的弊端,就是需要建立多种数据结构模型,增加了代码量。

相关学习推荐:PHP编程从入门到精通

以上是php传参的方法有哪些?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板