将数组添加到 MySQL Fetch

Posted

技术标签:

【中文标题】将数组添加到 MySQL Fetch【英文标题】:Adding Array to MySQL Fetch 【发布时间】:2015-04-08 18:02:43 【问题描述】:

我正在从我的数据库 (fetchAll) 中获取结果,然后将其编码为 json。

但是,我想为其添加其他值,但我不知道如何实现。

我尝试这样做是:

while ($posts = $database->fetchAll()) 
    $posts['additional'] = 'test';

但它不起作用。

我追求的结果是改变结果:

[
    "firstName":"John", "lastName":"Doe", 
    "firstName":"Anna", "lastName":"Smith", 
    "firstName":"Peter", "lastName":"Jones"
]

[
    "firstName":"John", "lastName":"Doe", "additional":"test", 
    "firstName":"Anna", "lastName":"Smith", "additional":"test", 
    "firstName":"Peter", "lastName":"Jones", "additional":"test"
]

我该怎么办?谢谢!

【问题讨论】:

你的问题是什么? 我想在当前获取的结果中添加额外的数据(在数组中)。 【参考方案1】:

不要同时使用fetchAllwhile

然后:

$posts = array();
while ($post = $database->fetch()) 
    $post['additional'] = 'test';
    $posts[] = $post;

或者:

$posts = $database->fetchAll();
foreach ($posts as &$post) 
  $post['additional'] = 'test';

【讨论】:

谢谢!按照你的方式工作得很好。 :)

以上是关于将数组添加到 MySQL Fetch的主要内容,如果未能解决你的问题,请参考以下文章

无法将从 Firebase 获取的数据添加到新数组

向 JSON 编码数组添加其他对象

PHP mysqli_fetch_assoc 没有返回正确的值

提取 MySQL Blob 并添加到 PHP 数组?

使用 fetch 进行 POST 请求以将数据添加到 JSON 服务器数据库

在PHP中创建添加和读取数组