1

この状況で引用符なしで配列を出力する方法

for($i=1; $i <= date("d"); $i++) { $days[] = $i;    }
echo json_encode($days); // ouput [1,2,3,4,5,6,7,8,9,10]

これは最初は問題ありませんが、2 つ目は

for($i=1;$i <= date("d"); $i++) {
        $Sql = "SELECT COUNT(Stats_Clicks) AS Total FROM tabstats WHERE DAY(Stats_Date) = $i
                AND MONTH(Stats_Date) = $month
                AND YEAR(Stats_Date) = $year 
                ";
        $Query = mysql_query($Sql,$Conn) or die (mysql_error($Conn));
        $Rs = mysql_fetch_array($Query);    

        $clicks[] = $Rs['Total'];
    }
    echo json_encode($clicks);

json 出力はこれを返します

["1","1","0","0","0","0","0","0","0","0","0"]

この形式で引用符なしでこれが必要です。

4

3 に答える 3

3

整数にキャストするだけです。

$clicks[] = (int)$Rs['Total'];
于 2012-05-11T02:38:57.470 に答える
1

intval関数でarray_mapを試してください

このような:

echo json_encode(array_map("intval",($Rs['Total'])));

例:

print_r(json_encode(array_map("intval",array("1","2","3"))));
=> [1,2,3]
于 2012-05-11T02:54:13.313 に答える
1

未テスト:

$clicks[] = (int) $Rs['Total'];
于 2012-05-11T02:38:21.553 に答える