【问题标题】:Add new elements to the result from MySQL query via php通过 php 将新元素添加到 MySQL 查询的结果中
【发布时间】:2020-09-06 09:37:44
【问题描述】:

我有以下问题,假设我正在查询 MySQL 数据库以获取以下数组:

Array ( [0] => Array ( [topicid] => 4 ) [1] => Array ( [topicid] => 5 ) [2] => Array ( [topicid] => 6 ) )

这些是我从以下 SQL 请求中得到的结果

 $sql=$db->query("SELECT topicid from opentopics WHERE userid=?","$userid")->fetchAll();

此查询为我提供了对某些用户 ID 开放的主题列表。现在有几个 ID 最多为 3 的主题对所有人开放,所以我也想在我的网页上使用它们。这些主题不会在 opentopics 表中打开,但会根据每个人的 ID(少于 3 个)提供给每个人。

所以问题来了,如何修改从 MySQL 请求中获得的多维(我假设)数组,如何在上述数组的开头添加 3 个新条目,使其看起来像:

Array ( [0] => Array ( [topicid] => 1 ) [1] => Array ( [topicid] => 2 ) [2] => Array ( [topicid] => 3 ) [3] => Array ( [topicid] => 4 ) [4] => Array ( [topicid] => 5 ) [5] => Array ( [topicid] => 6 ) )

您可能在我的文本编辑器中注意到我已经手动编辑了数组的文本,添加了这个

[0] => Array ( [topicid] => 1 ) [1] => Array ( [topicid] => 2 ) [2] => Array ( [topicid] => 3 )

【问题讨论】:

    标签: php mysql arrays


    【解决方案1】:

    你可以像这个例子一样获取你的结果,然后使用 array_merge

    $mysqli = new mysqli('localhost', 'root', '', 'test');
    
    $manual = array(
        [ 'id' => 9 , 'first_name' => 'John9' , 'last_name' => 'Doe9'] ,
        [ 'id' => 19 , 'first_name' => 'John19' , 'last_name' => 'Doe19']
    );
    
    $sql = " SELECT * from users ";
    $result = $mysqli -> query($sql);
    $rows   = $result -> fetch_all(MYSQLI_ASSOC);
    
    $results = array_merge($manual , $rows);
    

    结果会是这样的

    Array
    (
        [id] => 9
        [first_name] => John9
        [last_name] => Doe9
    )
    Array
    (
        [id] => 19
        [first_name] => John19
        [last_name] => Doe19
    )
    Array
    (
        [id] => 1
        [first_name] => John
        [last_name] => Doe
    )
    Array
    (
        [id] => 2
        [first_name] => John3
        [last_name] => Doe
    )
    Array
    (
        [id] => 4
        [first_name] => John4
        [last_name] => Doe
    )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      • 2014-07-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多