2012-08-31 117 views
-1

即時通訊新的對象和即時通訊仍然試圖讓我的頭圍繞它。PHP通過一個對象循環,只返回一個條件得到滿足

這裏的情況,我有:我的信息,從格式化爲這樣一組變量對象的API來

public 'id' => int 64 
public 'taskId' => int 6 
public 'projectId' => int 2 
public 'type' => string 'progress' (length=8) 
public 'text' => string 'bug5279 main branch fix confirmed beta still an issue with bounties' (length=111) 
public 'ownerId' => int 3 
public 'progress' => int 0 
public 'hoursDone' => float 0.25 
public 'createdAt' => string '2012-08-28T09:33:51' (length=19) 
public 'notifyProjectTeam' => boolean false 
public 'notifyTaskTeam' => boolean false 
public 'notifyClient' => boolean false 
public 'date' => string '2012-08-28T09:33:51' (length=19) 

這是我使用產生的代碼上面並返回一串對象 活動列表

$activityList = $activityClient->getList($filter, $offset, $count); 

這是用戶列表

$usersList = $usersClient->getAll(); 

現在我想做的事情,如果用戶hoursDone值是隻顯示用戶名> 0

我一派,我能找到不能似乎如何通過對象循環,但要找到合適的關鍵字顯示條件,因爲即時新的對象有點失落。這是通過

// get the usernames 
foreach($usersList->items as $user_details) { 
$users[$user_details->id]=$user_details->firstName.' '.$user_details->lastName; 
} 

// get projects 
foreach($tasksList->items as $task_details) 
{ 
$tasks[$task_details->id]=$task_details->name; 
} 

我的一個簡單的循環代碼和這裏是如何通過活動

foreach($activityList->items as $workdetails) 
    { 
echo "<br><h2>$username</h2><br>"; 
} 
foreach($tasks as $taskid=>$taskname) 
    { 
    if($userid==$workdetails->ownerId && $taskid==$workdetails->taskId) 
     { 
     echo "<br>$workdetails->hoursDone<br>"; 
     echo "<br>$workdetails->text<br>"; 
     } 
    } 

i循環現在的問題是我最終的東西是這樣的:

約翰在郵件上工作

James

傑裏

帕特

哈利 2.50 製作電子郵件

瑪麗

薩拉

但我不希望人們展現出來,除非他們有> 0 hoursDone。

這是我真的失去的一點,我不知道從哪裏開始說實話。任何鏈接到答案或例子都會很棒。這是繼承的代碼和我自己的代碼的混合體。

回答

0

你幾乎沒有,只是做

foreach($tasks as $taskid=>$taskname){ 
     if($userid==$workdetails->ownerId && $taskid==$workdetails->taskId && $workdetails->hoursDone > 0){ 
      echo "<br>$workdetails->hoursDone<br>"; 
      echo "<br>$workdetails->text<br>"; 
     } 
    } 

我添加了一個檢查,看看是否hoursDone值> 0

相關問題