php指定返回编码,PHP编码样式返回; 在开关/箱中

要回答您的问题,没有充分的理由要什么都不做。 以这种方式思考,在break之后而不是return后面说“不要忘记”的评论将具有相同的效果-没有。 这样听起来听起来很傻,对吗?

除非您需要设置一个var以便以后使用,否则我建议您使用的方法非常好。 在查看代码后的2秒钟内,我就知道了代码的意图。 拥有break只会造成混乱。

确实没有一种尺码适合所有人。 正确的方法取决于适合方案的情况。 在每个break中设置一个变量,并设置一个return可能是正确的方法,或者只是返回就有意义。

关于答案中其他建议的一些观察:

1)return之后没有break,则意味着如果以后更改代码,可能会出现问题

只要有可能,代码就应该是明确的,可读且清晰的。 我们还可以通过某种方式使将来的更改变得容易。 但是,在像break这样简单的事情中,应该没有问题,也不需要安全网来重构return,以后再添加或删除break或break。

实际上,如果您删除了break并“没有发现没有break”,那么这是一个很糟糕的错误,可能会在编码的任何部分出现。 没有陷阱检查将节省您的时间。 并且应该对未来的潜力进行非常仔细的编码,因为这种潜力可能永远不会发生,或者可能会发生其他事情,而您最终将维护过时的代码多年。

同样,它被认为是将来更改的安全网-如果您删除break并意外将其留在了该安全网return中,该怎么办?

即使这个switch语句是一个生死攸关的场景,真的是很严肃的代码,我还是反对在返回之后添加“无意义的”中断。 只需确保从事代码工作的人都知道他们在做什么,并且代码被足够多的人审查并经过了充分测试。

如果那真的很严重,那么您将比拟议的安全网更好地进行更多检查,以赶上草率的开发者。

辩称退货后休息增加了安全网,这意味着您未正确编码或测试。 如果这是一个有用的安全网,则可能在更严重的地方,代码中存在大量错误。

Wiki文章“防御性编程”已链接到该文章,但在这里不相关:

防御性编程是防御性设计的一种形式,旨在确保   意外情况下软件的持续功能   情况。

保留安全网break既不是不可预见的情况,也不是防御性编程。 这只是糟糕的编码,并且您不能在备份代码中乱扔代码,以防万一您更改某些内容时编码不正确。 这是一种糟糕的编码方法。 “如果有人将退货归还不起作用”的论点,那么您也可能在case var中有错别字,或者忘记写出case,或者...

break返回,并且您不必“防御性地”编码以避免返回失败。 那将意味着PHP已损坏,并且您也不会用安全网填充代码来满足此要求。 这是您在更高层次上拥有的东西。

2)return之后的break使其保持明确

但这显然是错误的。 break返回,因此不会发生中断。 对我来说,这是我从头开始思考的事情,想知道我是否错过了这个意图-不会很久就知道将会发生什么,但是有一段时间我会仔细考虑以确保我没有错过任何事情。

虽然在同一break中同时包含break和return并非无效或错误,但这完全没有意义,因为break什么也不做。 这是没有意义的代码,因为它不合逻辑,因此需要查看,维护和弄清楚。

如果显式的目标是核心目标,而在return之后又有break敦促您,因为它毫无意义,那么我会说最好设置一个变量和break,然后在断开开关后返回该变量。

像@RageZ一样[https://stackoverflow.com/a/1437476/2632129]

3)设置变量并在switch语句完成后返回

这种方法完全没有错,但是如果没有理由将值存储在变量中(以后使用等),那么最好在不需要进行任何其他操作时立即返回。

这表明了明确的意图-大小写匹配后立即返回一个值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值