gpt4 book ai didi

PHP、MYSQL 组合来自 mysqli_fetch_array 的数组

转载 作者:行者123 更新时间:2023-11-29 21:13:26 25 4
gpt4 key购买 nike

此代码是将事件输入 FullCalendar 的函数的一部分并从 this 稍作修改。我的编码知识充其量是最少的,而且已经接触了几天了。

  • 我的 MYSQL 数据分为两部分
  • 单独的日期和时间
  • 当前函数仅接受 DATETIME 或 TIMESTAMP 格式

解决方案:

  • 将数组中的 DATE 和 TIME 组合起来形成 DATETIME

让我们假设 MYSQL 表:

CREATE TABLE `test` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(11) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`sdate` date NOT NULL,
`stime` varchar(5) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
`edate` date NOT NULL,
`etime` varchar(5) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

让我们假设这个函数:

{
$events = array();
$query = mysqli_query($con, "SELECT * FROM test");
while($fetch = mysqli_fetch_array($query,MYSQLI_ASSOC))
{
$e = array();
$e['id'] = $fetch['id'];
$e['title'] = $fetch['title'];
$e['start'] = array_push($e,$fetch['sdate'],$fetch['stime']);
$e['end'] = array_push($e,$fetch['edate'],$fetch['etime']);

array_push($events, $e);
}
echo json_encode($events);
}

问题:

$e['start'] = array_push($e,$fetch['sdate'],$fetch['stime']);
$e['end'] = array_push($e,$fetch['edate'],$fetch['etime']);

无论输入什么数据,结果都是“4”。添加的数组越多,即使数据是字符串,$e 的值也只会增加 1。对我来说,这是进步,因为我尝试过其他方法,例如 $a + $b 或 array_combine,设置多个数组实例,例如:

$e['start'] = $fetch['sdate'];
$e['start'] = $fetch['stime'];
$e['end'] = $fetch['edate'];
$e['end'] = $fetch['etime'];

但都没有奏效。是否有可能组合数组以产生除其中包含的数组数量之外的其他结果?非常感谢大家花时间阅读。

最佳答案

事实是:

$e['start'] = array_push($e,$fetch['sdate'],$fetch['stime']);
$e['end'] = array_push($e,$fetch['edate'],$fetch['etime']);

如果你考虑 array_push 的定义,它声明它返回,那么返回 4 是完全正常的,我引用:

the new number of elements in the array.

由于有问题的数组是 e,我们知道已经存在索引为 startend 的元素,并且您的 array_push 包含另外两个元素,得出 4。

因此,了解 array_push 的重要一点是,它不返回数组,而是修改作为参数给出的第一个数组。因此,为了让您的示例正常工作,您应该简单地执行以下操作:

array_push($e['start'], $fetch['sdate'], $fetch['stime']);
array_push($e['end'], $fetch['edate'], $fetch['etime']);

关于PHP、MYSQL 组合来自 mysqli_fetch_array 的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com