-1

私はオブジェクトに不慣れで、まだ頭を回そうとしています。

これが私が持っている状況です:

次のような変数の束を持つオブジェクトとしてフォーマットされた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();

今私がしたいのは、userhoursDone値が>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>";
        }
    }

今問題は私がこのようなものになってしまうことです:

ジョン1は電子メールに取り組みました

ジェームズ

ジェリー

パット

ハリー2.50はメールに取り組みました

メアリー

サラ

しかし、私は人々が何時間も0を超えていない限り、人々が現れてほしくない。

これは私が本当に失ったポイントです、私は正直にどこから始めるべきかわかりません。回答や例へのリンクは素晴らしいでしょう。これは、継承されたコードと私自身のコードの混合物です。

4

1 に答える 1

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であるかどうかを確認するためのチェックを追加しました

于 2012-08-31T15:35:21.610 に答える