douyong1908 2016-05-20 08:34
浏览 89
已采纳

将键值对添加到现有数组或合并它们

I have to arrays:

$tickets = $db->loadObjectList();
$tickets_info = $details['ticket_info'];

$tickets:

array (size=2)

0 => 
object(stdClass)[2924]
  public 'price' => string '100.000' 
  public 'name' => string 'Standard ticket'
1 => 
object(stdClass)[2972]
  public 'price' => string '150.000' 
  public 'name' => string 'Luxus ticket'

$tickets_info:

array (size=2)
0 => string '98'
1 => string '50' 

I'm trying to add the 98 and 50 as 'available_tickets' to $tickets array like this:

0 =>
object(stdClass)[2924]
  public 'price' => string '100.000'
  public 'name' => string 'Standard ticket'
  public 'available_tickets' => string '98'
1 =>
object(stdClass)[2972]
  public 'price' => string '150.000'
  public 'name' => string 'Luxus ticket'
  public 'available_tickets' => string '50'

I have tried array_merge() and loop through, but nothing seems to work for me.

  • 写回答

3条回答 默认 最新

  • dss89001 2016-05-20 08:43
    关注

    I'd go with the following solution:

    foreach ( $tickets as $key => $ticket ) {
      if( array_key_exists( $key, $tickets_info ) ) {
        $tickets[$key]->available_tickets = $tickets_info[$key];
      } else {
        trigger_error('There is no equivalence to ticket #' . $key);
      }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站