为了账号安全,请及时绑定邮箱和手机立即绑定

php函数有必要检查函数的类型吗

php函数有必要检查函数的类型吗

PHP
湖上湖 2019-03-18 16:58:08
各位phper,由于php是弱类型语言,在以往php5.*中是不支持这种写法定义函数的function getRecord(int $id){ ..... }直到php7才支持,但是现在项目中使用php5.*的频率还是很高的,因此我在纠结用不用每个函数都检查一下传递过来的参数值是否是期待的。如果检查吧那么代码就会变得冗余,看着有点乱。如果不检查吧,又感觉自己的代码不够健壮。好纠结。。。。
查看完整描述

3 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

  1. 你自己也说了php是弱类型语言,所以他在传参检查上面做的并不严格,不管好与坏,这就是他的特点

  2. 我建议如果不是必要的情况下,没有必要对之前的所有代码进行覆盖的传参检查,这样不仅工作量大,而且可能会引起新bug

  3. 虽然php不在传参的时候检查类型,但是一般如果需要类型确定的情况下的话,一般也会在具体函数里面判断的,这就是个人写代码严不严谨了,跟语言关系不大

  4. 你觉得加了检查会导致代码冗余,这就是第一点说的每个语言都有他的特点,我觉得吧,必要的参数加检查就好了,没有必要每个函数的每个参数都加检查,这样既达到严谨的效果,也不会觉得太冗余

查看完整回答
反对 回复 2019-03-18
?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

不用。
又感觉自己的代码不够健壮
这个做好单元测试甚至人工测试就可以避免了。
弱类型是PHP的优势,如果太追求强类型会导致开发不方便。毕竟PHP不像JAVA那些天生就是强类型

查看完整回答
反对 回复 2019-03-18
?
莫回无

TA贡献1865条经验 获得超7个赞

为什么php是弱类型的语言,在于php可以在合适的时候进行自动转变,我觉得你这个问题应该在你写代码的时候如果你有预期类型的时候检验一下这个变量是否是你预期的类型应该就可以了,如果每个都检测的话工作量太大了。而且代码简洁和健壮性本来就是成反比,不可能全部都兼顾到。

查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 483 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信