Php 如何让一个JSON中的两个查询显示在Chart.js折线图上?

Php 如何让一个JSON中的两个查询显示在Chart.js折线图上?,php,mysql,json,Php,Mysql,Json,在我的项目中,将显示有关图表的统计信息 其中一个数据是本周和上周网站的点击量。两者目前都在各自的折线图中。在那里,所有的东西都显示出来了,没有任何问题。但现在我想把本周的数据和上周的数据放在一个单线图中,快速比较一下本周到上周网站的访问量 因此,我试图将两个查询的输出都转换成一个JSON,但我总是会遇到这个错误(JSON\u encode()期望参数2为int,数组给定) 我认为这应该以不同的方式解决,但我还没有找到任何其他的想法或方法 代码: header("Content-

在我的项目中,将显示有关图表的统计信息

其中一个数据是本周和上周网站的点击量。两者目前都在各自的折线图中。在那里,所有的东西都显示出来了,没有任何问题。但现在我想把本周的数据和上周的数据放在一个单线图中,快速比较一下本周到上周网站的访问量

因此,我试图将两个查询的输出都转换成一个JSON,但我总是会遇到这个错误(
JSON\u encode()期望参数2为int,数组给定

我认为这应该以不同的方式解决,但我还没有找到任何其他的想法或方法

代码:

    header("Content-Type: application/json");

    include "../../../includes/db.php";

    $stmt = $connection->prepare("SELECT website_stats_homepage AS current_week FROM website_stats WHERE yearweek(DATE(website_stats_date), 1) = yearweek(curdate(), 1) ORDER BY website_stats_date");
    //$stmt = $connection->prepare("SELECT website_stats_homepage FROM website_stats WHERE website_stats_date >= curdate() - INTERVAL DAYOFWEEK(curdate())+6 DAY AND website_stats_date < curdate() - INTERVAL DAYOFWEEK(curdate())-2 DAY");
    $stmt->execute();
    $result = $stmt->get_result();

    $stmt1 = $connection->prepare("SELECT website_stats_homepage AS last_week FROM website_stats WHERE website_stats_date >= curdate() - INTERVAL DAYOFWEEK(curdate())+6 DAY AND website_stats_date < curdate() - INTERVAL DAYOFWEEK(curdate())-2 DAY");
    $stmt1->execute();
    $result1 = $stmt1->get_result();

    $data = array();
    foreach($result as $row) {
        $data[] = $row;
    }

    $data1 = array();
    foreach($result1 as $row1) {
        $data1[] = $row1;
    }

    $stmt->close();
    $stmt1->close();

    echo json_encode($data, $data1);

标题(“内容类型:application/json”);
包括“../../../includes/db.php”;
$stmt=$connection->prepare(“从网站统计中选择网站统计主页作为当前周,其中yearweek(日期(网站统计数据),1)=yearweek(curdate(),1)按网站统计数据排序”);
//$stmt=$connection->prepare(“从网站统计中选择网站统计主页,其中网站统计日期>=curdate()-每周间隔日(curdate())+6天,网站统计日期execute();
$result=$stmt->get_result();
$stmt1=$connection->prepare(“从网站统计信息中选择网站统计信息主页作为最后一周,其中网站统计信息日期>=curdate()-每周间隔日(curdate())+6天,网站统计信息日期execute();
$result1=$stmt1->get_result();
$data=array();
foreach($结果为$行){
$data[]=$row;
}
$data1=array();
foreach($result1作为$row1){
$data1[]=$row1;
}
$stmt->close();
$stmt1->close();
echo json_encode($data,$data1);

将数据打包到关联数组中

echo json_encode(['current' => $data, 'last' => $data1]);
或者,您可以尝试使用子查询或联接来合并已通过查询的数据