douyi6922 2017-04-23 18:48
浏览 13

PHP - 当键不唯一时,将数组值附加到另一个数组

I have a query that returns me these results

array (size=6)
  0 => 
    object(stdClass)[14]
      public 'ReplyTo' => int 18
      public 'ReplyFrom' => int 21
  1 => 
    object(stdClass)[15]
      public 'ReplyTo' => int 19
      public 'ReplyFrom' => int 21
  2 => 
    object(stdClass)[16]
      public 'ReplyTo' => int 19
      public 'ReplyFrom' => int 22
  3 => 
    object(stdClass)[17]
      public 'ReplyTo' => int 20
      public 'ReplyFrom' => int 22
  4 => 
    object(stdClass)[18]
      public 'ReplyTo' => int 17
      public 'ReplyFrom' => int 22
  5 => 
    object(stdClass)[19]
      public 'ReplyTo' => int 18
      public 'ReplyFrom' => int 22

I need this kind of array to use the data:

array (size=2)
  ReplyFrom => 
    array (size=1)
      0 => ReplyTo
      1 => ReplyTo
  21 => 
    array (size=1)
      0 => 18
      1 => 19

I have tried this so far but it always overrides the value instead of adding it.

foreach($stm->fetchAll(PDO::FETCH_OBJ) as $quote) {
    $test[$quote->ReplyFrom] = array($quote->ReplyTo);
}

My question is: How can I append the values with the same key to the array instead of overwriting it?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥100 set_link_state
    • ¥15 虚幻5 UE美术毛发渲染
    • ¥15 CVRP 图论 物流运输优化
    • ¥15 Tableau online 嵌入ppt失败
    • ¥100 支付宝网页转账系统不识别账号
    • ¥15 基于单片机的靶位控制系统
    • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
    • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
    • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
    • ¥15 手机接入宽带网线,如何释放宽带全部速度