首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何创建可由X和Y坐标访问的数组?

如何创建可由X和Y坐标访问的数组?
EN

Stack Overflow用户
提问于 2012-07-11 18:51:07
回答 1查看 2.6K关注 0票数 0

我正在编写PHP脚本,它将存储鼠标在页面上的位置与时间戳。它将用于生成简单的热图。我有X&Y坐标的MySQL数据库,我想我会做一个数组,我将使用它来添加光标在特定像素上的外观计数。它的工作原理是这样的:我从数据库中读取数据,例如四个记录(x/y) 10/9,8/7,2/10,10/9我会在数组中的每个坐标上放1,最后一个点应该已经在数组中了,所以它会在x=10/y=9上放2,因为鼠标总数在那个像素上。

我应该如何制作数组,以及如何读取它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-11 19:25:53

首先,您需要创建一个空矩阵,其中定义了整个网格并用零填充:

代码语言:javascript
运行
复制
$width = 10;
$height = 10;

$matrix = array_fill(1, $height, array_fill(1, $width, 0));

现在,您只需迭代MySQL结果,并在每次命中时递增每个相关点。在本例中,我假设您的x和y列仅称为xy

代码语言:javascript
运行
复制
while ($row = mysql_fetch_assoc($queryResult)) {
  $matrix[$row['y']][$row['x']]++;
}

现在,如果你想获得某个点的点击数,比如x = 1, y = 8,你可以简单地这样做:

代码语言:javascript
运行
复制
$hits = $matrix[8][1];

您可以交换级别,这样x就在外层,这样它们就可以被引用为$matrix[$x][$y],而不是$matrix[$y][$x],但我个人认为,如果数组像数据库表一样以列的行(yx)的形式构造,会更有意义。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11431054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档