没有返回值

时间:2018-10-28 03:23:37

标签: php return

似乎无法弄清楚为什么回报不正确。如果dir_3是正确的,则应该为echo

该函数检查existing_dirs数组(如果存在{{1}),如果将$new_dir追加到_xx,如果不存在,它将返回$new_dir。但这不是,但是如果您$new_dir是正确的echo $new_dir

花了几个小时进行调试,这似乎是一个简单的问题!

谢谢

dir_3

1 个答案:

答案 0 :(得分:0)

if情况下,您似乎需要返回某物。

function dir_name($new_dir, $count){
    $existing_dirs = array('dir', 'dir_1', 'dir_2');
    if(in_array($new_dir, $existing_dirs)){ 
        $count ++;
        if($count == 1) {
            $new_dir = $new_dir . '_' . $count;
        }
        if($count > 1){
            $dir_parts = explode('_', $new_dir);
            $new_dir = $dir_parts[0] . '_' . $count;
        }
        return dir_name($new_dir, $count);
    } else {
        //echo $new_dir;
        return $new_dir;
    }
}