【问题标题】:Complex for each to retrieve array values复杂的每个检索数组值
【发布时间】:2014-06-27 20:50:01
【问题描述】:

我目前正在开发一个创建多维数组的项目。 print_r() 结果如下:

Array ( 
[campaigns] => Array ( 
    [0] => Array ( 
        [CampaignId] => 1 
        [DID] => 2394434444 
        [FWDDID] => 3214822821 
        [ProductId] => 1 
        [CampaignName] => Fort Myers Bus #1 
        [ProductName] => CallTrack - Sharktek 
        [Active] => 1 [CompanyId] => 1 ) 

    [1] => Array ( 
        [CampaignId] => 4 
        [DID] => 2394434445 
        [FWDDID] => 3214822821 
        [ProductId] => 1 
        [CampaignName] => Cape Coral Billboard #2 
        [ProductName] => CallTrack - Sharktek 
        [Active] => 1 [CompanyId] => 1 ) 

    [2] => Array ( 
        [CampaignId] => 5 
        [DID] => 2392146000 
        [FWDDID] => 3214822821 
        [ProductId] => 1 
        [CampaignName] => Test Campaign 
        [ProductName] => CallTrack - Sharktek 
        [Active] => 1 
        [CompanyId] => 1 )
    ) 
)

我正在尝试创建一个 foreach 循环,该循环选择所有 CampaignId 并在另一个循环中使用它们,不幸的是,我无法这样做。

因为我使用的是 CodeIgniter,所以我无法在控制器中简单地回显结果,而是必须将我想要的值传递给另一个数组以发送到视图

感谢您的时间和努力,任何帮助将不胜感激!

【问题讨论】:

  • 没那么复杂,你的foreach呢?
  • 我正在尝试编写允许我访问 CampaignId 并将它们中的每一个用作另一个函数中的参数的 foreach
  • foreach ($data as $row) { $campaign1 = $row['CampaignId']; }

标签: php arrays codeigniter multidimensional-array


【解决方案1】:

如果您只是想稍后将所有 CampaignId 设置为 foreach,并且您的 PHP >= 5.5.0,请使用 array_column

$ids = array_column($array, 'CampaignId');

如果 PHP foreach 超过 $array['campaigns']

foreach($array['campaigns'] as $campaign) {
    $ids[] = $campaign['CampaignId'];
}

【讨论】:

  • 非常感谢您的建议,我已尝试执行以下操作:$data['campaigns'] = $this->model_record->retrieve_campaign($CompanyId); $CampaignId = array_column($data, 'CampaignId'); print_r($CampaignId);和 $data['campaigns'] = $this->model_record->retrieve_campaign($CompanyId); $CampaignId = array_column($data['campaigns'], 'CampaignId'); print_r($CampaignId);
猜你喜欢
  • 2018-11-28
  • 2018-11-02
  • 2015-11-06
  • 1970-01-01
  • 2013-12-05
  • 2020-02-18
  • 2020-11-18
  • 2021-05-22
  • 1970-01-01
相关资源
最近更新 更多