2014-12-15 2 views
0

두 배열의 값을 in_array()을 사용하여 비교해 보았습니다. $friends[]에는 친구 테이블에 내 친구의 모든 ID가 포함되어 있으며 $membersarray[]에는 팀에 ID가 포함되어 있습니다.in_array()에서 결과를 표시하는 중에 오류가 발생했습니다

여기서 in_array()을 사용하여 수행하려는 작업은 팀의 일부가 아닌 친구 ID 만 표시하고 작동하도록하는 것입니다. 하지만 이제 결과 ($t)에 ID 대신 친구 테이블에 저장된 성을 표시하고 싶습니다.

예를 들어, 3, 5 및 7이 표시됩니다. 'john', 'doe'및 'rick'을 표시하고 싶습니다. 어떻게해야합니까?

$friends[] = $record5['id']; //contains of ids of all friends 

$membersarray[] = $output['id']; //contains ids of all team members 

foreach ($friends AS $t) { 

    if (in_array($t, $membersarray)) { 
    //donothing       
    } else { 
    echo $t; 

    } 
    } 
당신은 변수 이름 뒤에 빈 괄호이 구문을 사용할 수 있습니다
+0

어떤 변수 이름에 저장됩니다

만큼 $record5['id'] 이미 배열로, 당신은 단지이 필요하십니까? – Barmar

+0

'john'과'rick'이 이름이고 성을 표시하고 싶다고 말했습니까? – Barmar

+0

'$ record5 [ 'id']'에 var_dump를 수행하고 결과를이 질문에 대한 편집으로 게시 할 수 있습니까? – larsAnders

답변

0

:

$friends[] = $record5['id']; //adds one element to the array $friends 

배열에 하나의 요소를 추가 할 수 있습니다.

$friends = $record5['id']; //contains ids of all friends 

$membersarray = $output['id']; //contains ids of all team members 
+0

이해가 안됩니다. 나는 단지 surnane이 아니라 id를 표시하고 싶다. 현재 출력 ($ t)은 ID를 표시합니다. – ADS

+0

Ahhhhh .... 잡았다. 따라서 원래 쿼리의 일부로 다른 SQL 쿼리에서 이름을 선택해야합니다. 데이터베이스 쿼리 수를 절대 최소로 유지하는 것이 가장 좋습니다. 사용중인 쿼리를 게시 할 수 있습니까? – larsAnders

+0

원래 쿼리에서 선택되었습니다. 문제는 배열에 ID 만 저장하므로 '$ t'는 ID가 저장되어 있기 때문에 ID 만 표시한다는 것입니다. '$ t'를 ID로 사용하여 친구 테이블에서 성을 선택하는 쿼리를 가져올 수 있습니까? – ADS

관련 문제