2013-03-20 65 views
0

PHP 我有兩個單一的數組,填充從兩個表,與ID。從一個數組中,我需要能夠在出現多個X數的情況下刪除所有ID相同的值。 我這樣做:陣列刪除重複的條目,他們超過一個X值

volunteerRoleQuery = mysql_query("SELECT member_no, role_code, volunteer_date FROM   evntrole WHERE volunteer_date > '$today' "); 
$numberEvntRole = mysql_numrows($volunteerRoleQuery); 

while ($row = mysql_fetch_assoc($volunteerRoleQuery)) { 
    $member_no = $row["member_no"]; 
    array_push($volunteersArray, $member_no); 
} 

fputcsv($output, array('Member number', 'Full name', 'First name', 'Surname', 'Email', 'Mobile', 'Phone')); 

$teamMemQuery = mysql_query("SELECT member_number, activity_code, modify_date FROM teammem WHERE modify_date > '$today' "); 
    $numberTeamMem = mysql_numrows($teamMemQuery); 

if ($numberTeamMem > 0) { 
    while ($row = mysql_fetch_assoc($teamMemQuery)) { 
     $member_no = $row["member_number"]; 
     array_push($teamMemArray, $member_no);   
    } 
} 

// TODO:只保留會員ID的比X事件多,說3 //如1,1,2,3,3,3,3,6,7 ,7,7,7將只保留3,7 //這將確保我們不要求成員自願如果僅僅做了一些事件。

​​
+0

該數組可能如下所示: 1,1,1,4,4,5,6,7,7,7,7等如果X值爲3,則只剩下7個。 任何例子都會很棒。 – 2013-03-20 23:31:49

回答

0

不知道我理解正確的話,你需要什麼,但是,你看着:從PHP array_count_values

它爲您提供另一個數組,其中包含爲關鍵字找到的匹配數量。

你可以循環遍歷它並刪除結果大於X的鍵?

+0

總的任務是那些誰自告奮勇在給定的時間內與他們有多少事件做比較的人。有兩個變量:完成的事件數量和回顧的年數。 – 2013-03-20 23:21:39

+0

任何人都有任何示例代碼來刪除所有值,除非它們符合上面顯示的條件。 – 2013-03-21 23:33:24

+0

我很抱歉,您既沒有正確解釋,也沒有顯示足夠的代碼,以便我完全理解您需要什麼。 請編輯您的問題,並添加簡要的信息,我會幫助你。 – 2013-03-22 00:46:57