0

我想改进前置条件断言:

function foo($bar) {
    if($bar === null) {
        return;
    }

    // do stuff
}

更好的解决方案是g_return_if_failg_return_val_if_fail C 宏。

assert似乎是一个不错的选择,但执行流程并没有中断。如果没有宏,解决方案是:

function foo($bar) {
    assert($bar === null) || return;

    // do stuff
}

但是解析器不喜欢这个。你有其他想法吗?(首选 php 版本:5.3)。

4

1 回答 1

0
if (!assert($bar === null)) {
  return;
}
于 2012-11-22T11:26:11.983 回答