확인해 주셔서 감사합니다. 모든 유용한 답변/의견이 투표되었습니다. 다음 코드는 작업을 수행하지만 imo는 효율적이지 않습니다. 내가 효율적이지 않다고 생각하는 이유는 fetchAll + 루프 을 사용하고 있기 때문입니다.하지만 쿼리가 1 또는 2 개의 레코드를 반환한다는 것을 알고 있습니다.PHP에서 PDO,이 PDO mysql 코드를 개선하는 방법
//assume the usual new PDO, binding, and execute are up here
$myval = "somevalue";
$res = $stmt->fetchAll(PDO::FETCH_ASSOC);
if (!$res) {
//no record matches
//BLOCK A CODE HERE
} else {
//found matching record (but always going to be 1 record, no more)
foreach($res as $row) {
if ($myval == $row['val']){
//myval is the same as db
//BLOCK B CODE HERE
} else {
//myval is different from db
//BLOCK C CODE HERE
}
}//foreach
}
가 어떻게 그것이 foreach는하고 fetchAll의 부피가 큰 모양을 제거하기 위해 개선 할 수 (I는 항상 1 개 또는 0 만 기록 될 것 알고 고려)? 하지만 여전히 비슷한 체크 포인트가 필요하므로 현재 로직이 필요로하는 것과 동일한 BLOCK A
BLOCK B
BLOCK C
을 실행할 수 있습니다.
+1 예외 사용! – ChrisR
네, +1이에요. – Chris