다음 foreach 쿼리는 [ 'options'] [ 'Colors']에 값만 삽입하고 [ 'options'] [ 'Color']에는 값을 삽입하지 않습니다 ???foreach 루프 내에서 조건을 사용하는 방법
업데이트 된 질문 :
if (!is_array($value['options']['Colors'])) {
$value['options']['Colors'] = array($value['options']['Colors']);
}
if (!is_array($value['options']['Color'])) {
$value['options']['Color'] = array($value['options']['Color']);
}
if(isset($value['options']['Colors'])) {
$colorArr = $value['options']['Colors'];
} else if(isset($value['options']['Color'])) {
$colorArr = $value['options']['Color'];
}
foreach ($colorArr as $colors) {
$stmt->execute(array(':pid' => $PID, ':colors' => $colors));
}
물론 있습니다. 'OR'은 왼쪽과 오른쪽 피연산자를보고 결과가 '참'또는 '거짓'인 연산자입니다. '진실'또는 '거짓'을 '예언'할 수는 없습니다. –