在函数中可以返回null以退出函数PHP

时间:2013-01-15 01:36:40

标签: php

我通过ref传递两个var来改变它们,一旦我更改了它们,或者其中一个(8个循环)在我正在使用的字符串中找到了一个正数,我想退出该函数,但我不知道不需要返回任何东西,因为它们是由ref传递的。

我可以传递一个副本然后重新引用另一个副本并将复制的变量=设置为函数并返回该函数,但是有一个更简洁的方法我只是调用函数,变量已经设定,我可以继续前进?

function get_cat_size($urlstr, &$cat, &$size){ return null; };

$cat = get_cat_size($urlstr, &$size);

第一个是否有效?女巫的可读性更好?

感谢您的投入!

while( $i < $countz )
    {
    $pos = strpos($outdoor, $outdoor[$i]);
    if($pos != false)
    {
        $cat = $outdoorID;
            while( $j < $sizeArrayCount)
            {
            $poz = strpos($outdoor, $outdoor[$i]);
            if($poz != false)
            {
                $size = $outdoorID;
                return;
            }
            $j++;
            }
        return;
    }
    $i++;
    }

^所以这应该有效,是的,不是吗?

因此,这是订单中设置的8个循环之一,因为它们对于重要的最不重要,具有不同的var =不同的商店。

2 个答案:

答案 0 :(得分:3)

您可以在没有值的情况下返回:

function returnsNothing (&$a, &$b) {
    return;
}

或者更简单,只需省略所有

的return语句
function returnsNothing (&$a, &$b) {
    // do something
}

两个片段都会使函数返回NULL。

答案 1 :(得分:0)

请查看break,以便退出for循环。

我个人会避免在函数中返回null,因为如果没有指定NULL值,默认情况下会返回return。您可以在PHP: Returning values

了解更多信息