我只是想知道如何在这里添加数据类型?当我使用此代码时,Google 图表需要数据类型:
我从谷歌图表中收到错误,需要定义它的数据类型...请帮助。谢谢!
while($r = mysql_fetch_assoc($query)) {
$google_JSON = "{cols: [";
$column = array_keys($r);
foreach($column as $key=>$value){
$google_JSON_cols[]="{id: '".$key."', label: '".$value."'}";
}
$google_JSON .= implode(",",$google_JSON_cols)."],rows: [";
$google_JSON_rows[] = "{c:[{v: '".$r['id']."'}, {v: ".$r['count']."}]}";
}
// you may need to change the above into a function that loops through rows, with $r['id'] etc, referring to the fields you want to inject..
//pass it into google charts data
echo $google_JSON.implode(",",$google_JSON_rows)."]}";
最佳答案
我已经很久没有做过任何 PHP 了,所以我不会为您的代码提供任何补丁,但数据类型位于 cols 哈希引用的数组元素中,即您创建 {id:"的位置key", label: "value"} 你需要添加 'type: "number"' 或 'type: "string"' 等。如何通过引用回查询来确定它是否是字符串的数字是不会发生的就这么简单。您可以通过 mysql 模块为列提供的任何元数据来查看列类型,但大多数图表需要系列的数字类型和 x 轴值的字符串/数字类型。您始终可以将第一列设置为字符串或数字,将其他列设置为数字,但这取决于您创建的图表的类型。
顺便说一句,我很惊讶您无法在 PHP 中本地创建结构,然后转换为 JSON,而不是像这样构建 JSON 字符串 - 您可以在 Perl 中轻松完成。
关于php - 使用 PHP 和 MySQL 的 Google Charts 的数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9443720/