php函数返回0或根本没有返回

时间:2017-09-08 23:12:39

标签: php

对功能返回感到困惑。
如果我有一个没有需要实际返回的函数,我是否必须返回0或返回false以获得更好的代码?

function example($time)
{
   echo $time
   //do i need to return 0 here?
};

$foodstore = array('bread','milk','meat','fruits','veges');
$buyer_list = array('bread', 'milk', 'chocolate');
function example($buyer_list , $foodstore)
{
   foeach($buyer_list as $item)
   {
       if(in_array($item, $foodstore)
        {
           return $item
        }
   }
//if i have to return only a specific $item, do i need to return 0 if no $item is specified.
}

function example($filename)
{
  $file = file_get_contents($filename);
...
  file_put_contents($filename, $file);
//do i need to return 0 here?
}

1 个答案:

答案 0 :(得分:3)

只是为了澄清:对于更清晰,更易理解的代码,如果函数不是void函数,则应该总是返回一些东西。你必须问自己这个问题:

  • 为什么函数没有返回所需的结果?
  • 在错误案例中应该返回什么内容?
  • 是否指定,当函数表现不同时?
  • 如果结果是意外的,调用者如何反应。

最后一点是必要的,您可以清楚地看到,错误值是什么,例如在循环后显式添加ffmpeg -i infile.mp4 -c:v copy -c:a copy -map 0 -f ssegment -segment_list playlist.m3u8 -segment_list_type hls -segment_list_size 10 -segment_list_flags +live -segment_time 4 outchunk%07d.ts

强迫您考虑功能的好方法是编写文档,如PHPDoc