>  Q&A  >  본문

PHP 배열의 두 문자열 간 전환

<p>두 개의 값 ​​$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粉710478990P粉710478990433일 전575

모든 응답(2)나는 대답할 것이다

  • P粉029327711

    P粉0293277112023-09-05 12:26:32

    짧게 요청하셨지만 때로는 선명한 것이 더 좋다고 생각합니다. 대부분의 다른 답변에는 추가 배열이나 트리플이 포함되어 있으며 이는 완전히 괜찮고 100% 유효하지만 코드의 의도가 그렇게 분명하다고 생각하지 않습니다. 저에게는 증가와 감소를 위해 if 并仅使用 ++--를 유지하겠습니다. 나는 "비즈니스 규칙"이 매우 명확하고 코드가 깔끔하게 읽힌다고 생각합니다.

    다시 말씀드리지만, 정확하게 요청하신 내용은 아니고 제 2센트입니다.

    으아악

    회신하다
    0
  • P粉166779363

    P粉1667793632023-09-05 00:11:58

    해결책 1:

    으아악

    해결책 2:

    으아악

    해결책 3($voteModel의 "up"이 인덱스 1이고 "down"이 인덱스 0인 경우):

    으아악

    해결책 3b(관련 키를 유지하려는 경우):

    으아악

    회신하다
    0
  • 취소회신하다