2017-06-28 4 views
0

チャットしていないチャットの合計数を取得する方法を知りたい。 は、これまでのところ、ここで私はまだ行って欲しいです:、phpを使用してjsonで逃したチャットの合計数を取得

var json = '{ 
    "chats": [ 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": true 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": false 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": false 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": true 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": true 
    } 
    ] 
}'; 

    var obj = JSON.parse(json); 

    alert(obj.chats.length); 

だけ逃し、見逃せないチャット(真= yesの なし=偽)の合計数を表示したいともPHPのフォーマットに

はあなたに感謝しますあなたがカウントを取得するために、SQLクエリを使用することができます よろしく

+3

http://stackoverflow.com/help/how-to-askをカウントmissednoになります - 私たちは書くこと、ない助けるためにここにいますあなたのためのコードあなたがこれまでに試したことを私たちに示し、私たちとあなたの考えを共有してください、そして私たちはあなたを助けます。しかし誰もあなたのためにコードを書いてはいけません。 – Twinfriends

+0

さて、私は私のポスト – ivor

+0

を編集します@ivor。これを試してみてください。.. '数($チャット[「逃した」] ==「偽」)エコー;' –

答えて

1

PHPで次のことができますトンをループ彼のデータとは、カウント以下のように取得する:

$chats='{ 
    "chats": [ 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": true 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": false 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": false 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": true 
    }, 
    { 
     "department_name": "Lesson and Fee Support", 
     "id": "1706.2327063.QNoy006lji184", 
     "end_timestamp": "2017-06-28T06:16:12Z", 
     "referrer_search_terms": "", 
     "referrer_search_engine": "", 
     "missed": true 
    } 
    ]}'; 
$chats=json_decode($chats,true); 
$chats=$chats['chats']; 
if(!empty($chats)) 
{ 
    $missed=0; 
    $notMissed=0; 
    foreach ($chats as $key => $chat) { 
     if($chat['missed']){ 
      $missed++; 
     }else{ 
      $notMissed++;   
     } 
    } 
    echo '<p><strong>Missed:</strong>'.$missed.'</p>'; 
    echo '<p><strong>Missed:</strong>'.$notMissed.'</p>'; 
} 

しかし、私はあなたがPHPやJavaScriptでループを避けることができるようにデータベースレベルからのカウントを取得することをお勧めいたします。

+0

ありがとう@PrasadGK、API jsonを使用しているために私はできません... – ivor

+0

@ivorもしそうなら、できません。だからPHPやJavaScriptメソッドに行く。 –

+0

うん...おかげで再び男が... ...ところで私のデータのいくつかは、私はPHPでそれを行うことができますどのように...チャットを逃していませんか?... – ivor

-1

-

SELECT (SELECT COUNT(*) FROM chat WHERE missed = true) as unread_count, (SELECT COUNT(*) FROM chat WHERE missed = false) as read_count FROM chats LIMIT 0,1; 
+1

この答えは全く正しくありません。彼はデータベースからではなく、JSONファイルからデータをリトリーブしたいと考えています。あなたはJSON上でSQLを使うことはできません。 – Twinfriends

+1

@Twinfriends残念ながら、残っている唯一の選択肢は、値をループしてカウントを得ることです。 –

0
var obj = JSON.parse(json); 
len =obj.chats.length; 
missedyes=0; 
missedno=0; 
for(i=0;i<len;i++) 
{ 
val =obj.chats[i].missed; 
if(val==true){missedyes+=1}else{missedno+=1} 
} 

missedyesは、チャット回数を逃し、チャットをmisedないであろう

関連する問題