2012-12-09 2 views
2

일치하는 값이 있으면 true를 출력하고 array_intersect 함수를 생각하면됩니까? 매우 확실하지 않다! 어떤 도움을 많이 주시면 감사하겠습니다!두 배열의 값을 일치 시키려고하면 일치하는 값이있는 경우 true를 출력하고 두 배열의 값을 일치 시키려고하면

기본적으로이 상자에 들어갈 수없는 두 가지 sql 쿼리가 있습니다! 하지만 그들은 $ staffExpertise 및 $ moduleExpertise 배열을 반환하지만, PHP는 매우 익숙하지 않으며, 배열의 교차 함수에 익숙하지 않으므로 여기에서 무엇을 해야할지 너무 확신하지 못합니다! 시도

foreach ($results as $row) { 
     $staffExpertise = $row['expertise']; 
    } 

    foreach ($results as $row) { 
     $moduleExpertise = $row['expertise']; 
    } 

    $arrayIntersection = array_intersect($moduleExpertise, $staffExpertise); 

    if($arrayIntersection =){ 

    } 
+0

기본적으로 내가이 상자에 매우 적합 기운이 SQL 쿼리를 가지고! 하지만 그들은 $ staffExpertise 및 $ moduleExpertise 배열을 반환하지만, PHP는 매우 익숙하지 않으며, 배열의 교차 함수에 익숙하지 않으므로 여기에서 무엇을 해야할지 너무 확신하지 못합니다! foreach ($ 결과를 $ 행) { $ staffExpertise = $ row [ '전문 기술']; } foreach ($ results as $ row) { $ moduleExpertise = $ row [ 'expertise']; } $ arrayIntersection = array_intersect ($ moduleExpertise, $ staffExpertise); if ($ arrayIntersection =) { } –

+1

@FindlayMack 질문을 올바른 형식으로 업데이트하십시오. –

+0

시도한 코드 중 일부를 표시하거나 도움을 드릴 수 없습니다. – DrinkJavaCodeJava

답변

0

:

<?php 
    if (in_array($Array1, $VarToCheck)) { 
     $return = true; 
    }elseif (in_array($Array2, $VarToCheck)){ 
    $return = true; 
    } 
?> 
+0

응답 주셔서 감사하지만 문제는 $ vartocheck가 두 개의 개별 테이블에서 가져온 것입니다. 예를 들어, 강사가 모듈을 가르치기위한 정확한 모듈 전문 지식을 가지고 있는지 확인하기 위해 내가 검사하는 방법은 moduleexpertise 테이블과 staffExpertise가 모두 일치하는 값을 가지고 있는지 확인하는 것입니다. 그게 말이 되면? –

+0

그건 그렇습니다. AaronSantos 응답을 확인하십시오, 그 트릭을 할 수 있습니다! –

+0

그래, 그럴 것 같아! 모든 도움에 건배! –

4

예 배열이 교차는 않습니다. 이런 식으로 뭔가를 시도 :

$names_1 = array("Alice", "Bob", "Charlie", "David"); 
$names_2 = array("Alice", "Bruno"); 

$intersection = array_intersect($names_1, $names_2); 

if(!empty($intersection)){ 
    echo "The following item(s) exist in both arrays:"."<br>"; 
    foreach($intersection as $row){ 
     echo $row."<br>"; 
    } 

}else{ 
echo "The arrays do not intersect"; 
} 
+0

대단히 고맙습니다. 코드의 미끄러운 작은 줄이있었습니다! –