构造语句中的函数

时间:2011-04-18 01:10:45

标签: php function if-statement construct

我只是在编写代码并想知道如何在构造中包含函数。

if (!formatPhone($phone) && !empty($phone)) {
    $e = 1;
    $e_message .= '<li>The phone number is invalid, please use the format (000) 000-0000.</li>';
} else {
    $phone = formatPhone($phone);
}

我是否可以直接在contruct语句中将$ phone分配给formatePhone()输出,但仍然会检查return false;

2 个答案:

答案 0 :(得分:1)

$phone = formatPhone($phone) or $phone = $default_value;

这意味着如果formatPhone()的返回值为false,$phone将被指定为$default_value而不是false。否则,如果formatPhone()的返回值不为假,则会为$phone分配其返回值。

答案 1 :(得分:1)

您可以将作业包含在表达式中。但在你的情况下,你应该重新排序测试,在重新分配值之前首先检查空虚:

if ( !empty($phone) and !($phone = formatPhone($phone)) ) {
    $e = 1;
    $e_message .= '<li>The phone number is invalid, please use the format (000) 000-0000.</li>';
}

这会省你的其他树。但更具可读性不是。 :|