2017-06-13 10 views
0

私は奇妙な問題に遭遇しました。グラフのデータを表示しようとしていますが、データをJSONに変換するJSON_ENCODEが何も返されていません。以前はデータが少ないのに何らかの理由でこれ以上何も返されなかった時にはうまくいきました。json_encodeが動作しません(これ以上)

ここに私のPHPです:

$vak = $q->getVakAll(); 

$data = array(); 
foreach($vak as $vak){ 
    $vak = $vak->getCode(); 
    $result = $q->getAanwezigheidVakkenPerJaar($value, $vak); 
    foreach ($result as $row) { 
     $data[] = $row; 
    } 
} 
print json_encode($data); 

これは何も出力しない、私は$データの下に[] = $行にこれを追加するときに、奇妙なことがある:

echo $row['vak']; 
echo $row['percentage']; 

をそれが出力何かを、この:

Webdevelopment 176Webdevelopment 224Introductie object georiënteerd programmeren75Multimedia & Design59Informatiestromen73Introductie IT Modelleren6 

これは出力になりたいが、JSONがエンコードされているので、助けてくれますか?

EDIT:

$vak = $q->getVakAll(); //gets all subjects (like webdevelopment)// 

$result = $q->getAanwezigheidVakkenPerJaar($value, $vak); //this returns all subjects with their corresponding presence (for example, webdevelopment 1 has a total presence of 74(%)// 
+0

'$ q-> getVakAll();'は何を返しますか? – Rimble

+0

@Rimble値を含むすべてのサブジェクトを返します。 – sebas2201

+3

"foreach($ vak as $ vak)"と競合していますか? – hRdCoder

答えて

1

これは、あなたがこれらのコマンドであなたの$vak配列を破壊しているあなたの問題

foreach($vak as $vak) 
    $vak = $vak->getCode(); 

です。

$vak変数をすべてその場所に再使用しないでください。代わりにこれを試してください。代わりにprint使用の

$vaks = $q->getVakAll(); 

$data = array(); 
foreach($vaks as $vak){ 
    $code = $vak->getCode(); 
    $result = $q->getAanwezigheidVakkenPerJaar($value, $code); 
    foreach ($result as $row) { 
     $data[] = $row; 
    } 
} 
0

echo json__encode(array) die;は、このヘルプを願っています。

関連する問題