$arr = ['up', 'down'];</code>을 갖는 배열이 있습니다. 누군가 찬성 투표를 하면(<code>$vote = 'up';</code>) 데이터베이스의 up 필드는 1씩 증가하고 down 필드는 1씩 감소해야 합니다. </p>
<p>if else 조건을 사용할 수 있습니다:</p>
<pre class="brush:php;toolbar:false;">if ($vote === 'up') {
$voteModel['up'] = $voteModel['up'] + 1;
$voteModel['down'] = $voteModel['down'] - 1;
} 또 다른 {
$voteModel['up'] = $voteModel['up'] - 1;
$voteModel['down'] = $voteModel['down'] + 1;
}
</pre>
<p>그런데 이 시간을 단축할 수 있을지 궁금합니다. <code>arr = ['up' => 'down'];</code>에 대해 생각하고 있었지만 안타깝게도 지금은 아무데도 도달하지 못했습니다. 어떤 생각이 있나요? 감사해요! </p>
P粉0293277112023-09-05 12:26:32
짧게 요청하셨지만 때로는 선명한 것이 더 좋다고 생각합니다. 대부분의 다른 답변에는 추가 배열이나 트리플이 포함되어 있으며 이는 완전히 괜찮고 100% 유효하지만 코드의 의도가 그렇게 분명하다고 생각하지 않습니다. 저에게는 증가와 감소를 위해 if
并仅使用 ++
和 --
를 유지하겠습니다. 나는 "비즈니스 규칙"이 매우 명확하고 코드가 깔끔하게 읽힌다고 생각합니다.
다시 말씀드리지만, 정확하게 요청하신 내용은 아니고 제 2센트입니다.
으아악P粉1667793632023-09-05 00:11:58
해결책 1:
으아악해결책 2:
으아악해결책 3($voteModel
의 "up"이 인덱스 1이고 "down"이 인덱스 0인 경우):
해결책 3b(관련 키를 유지하려는 경우):
으아악