dongmu2517
2015-05-19 13:40
浏览 948
已采纳

使用foreach循环遍历数组并将结果放入新数组中

Hey everyone so I am trying to loop through an existing array and then add data from that array into a new array if certain conditions are met. This is my current code but it does not work. I am not sure how to go about doing what I want to do.

$allClientArr = $authPartner->getmyClients();

foreach($allClientArr as $client){
  if($client->get('status') == "AC"){
    $clientArr += $client;
  }
}

I am using elements of clientArr further down in my page.

图片转代码服务由CSDN问答提供 功能建议

大家好,所以我试图循环遍历现有数组,然后将该数组中的数据添加到新数组中 满足某些条件。 这是我当前的代码,但它不起作用。 我不确定如何去做我想做的事。

  $ allClientArr = $ authPartner-> getmyClients(); 
 
foreach($ allClientArr as $ 客户端){
 if($ client-> get('status')==“AC”){
 $ clientArr + = $ client; 
} 
} 
    
 
 

我在页面中使用了clientArr的元素。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • douke1942 2015-05-19 13:42
    已采纳

    That is not how you do it in PHP. Your code should look like this:

    $allClientArr = $authPartner->getmyClients();
    $clientArr = array(); // make sure you define $clientArr as an array
    
    foreach($allClientArr as $client){
      if($client->get('status') == "AC"){
        $clientArr[] = $client; // this is how you add element to array
      }
    }
    
    点赞 打赏 评论
  • douzhui8531 2015-05-19 13:42

    The line

    $clientArr += $client;
    

    Will try to add the value to a variable. If you want to add $client to $clientArr, then try

    $clientArr[] = $client;
    
    点赞 打赏 评论
  • doutuan9357 2015-05-19 14:00

    i have two answer for you if you use php 5.5 then just do :

     $allClientArr = $authPartner->getmyClients();
     $clientArr = array(); // make sure you define $clientArr as an array
     foreach($allClientArr as $client){
     if($client->get('status') == "AC"){
     $clientArr[] = $client; // this is push the variable $client into the array $clientArr[]
     }
    }
    

    but if you use php 5.4 just do:

    $allClientArr = $authPartner->getmyClients();
     $clientArr = array(); // make sure you define $clientArr as an array
     foreach($allClientArr as $client){
     if($client->get('status') == "AC"){
     array_push($clientArr[], $client); // this is push the variable $client into the array $clientArr[] in another word it add it in the end of the array
     }
    }
    
    点赞 打赏 评论

相关推荐 更多相似问题