0

我想削减 if 语句并使其成为最佳方式

if ($box === 1) {
    $message['sender'] = $data['user_profile_id'];
    $message['receiver'] = $data['to_user_profile_id'];
} else {
    $message['sender'] = $data['to_user_profile_id'];
    $message['receiver'] = $data['user_profile_id'];
}

1 次尝试:

$message['sender'] = $box === 1 ? $data['user_profile_id'] : $data['to_user_profile_id'];
$message['receiver'] = $box === 1 ? $data['to_user_profile_id'] : $data['user_profile_id'];

有没有更好的方法来切换发送方/接收方变量?

4

1 回答 1

0

我认为你的第一个陈述看起来不错,但你可以让你的第二个例子更短一些,但在我看来这是不值得的:

$message['sender'] = $data[($box===1 ? 'to_' : '_') .'user_profile_id'];
$message['receiver'] = $data[($box===1 ? '_' : 'to_') .'user_profile_id'];
于 2013-05-24T09:59:47.153 回答