2013-03-08 3 views
1

Первый массив имеет некоторые элементы с p2p_id как значение.Как сравнивать объекты внутри одного массива?

array (size=5) 
    0 => 70 
    1 => 99 
    ... 

, обратившись к вышеуказанным p2p_ids, я получаю второй массив, чтобы каждый элемент был объектом с деталями. Я хочу сравнить эти элементы, найти элементы, которые имеют одинаковое значение p2p_to, и тот же p2p_type. Я хотел бы узнать, как это сделать.

array (size=5) 
    0 => 
    object(stdClass)[234] 
     public 'p2p_id' => string '70' 
     public 'p2p_from' => string '1124' 
     public 'p2p_to' => string '1459' 
     public 'p2p_type' => string 'd_to_x' 
    1 => 
    object(stdClass)[237] 
     public 'p2p_id' => string '99' 
     public 'p2p_from' => string '1327' 
     public 'p2p_to' => string '1459' 
     public 'p2p_type' => string 'd_to_x' 
    2=> 
    3=> 
    4=> 
    5=> 
    ... 
+1

ли оба согласующих элементов должны иметь p2p_id в первом массиве? – Barmar

+1

Второй запрос исходит из запроса p2p_id (первого массива), поэтому все элементы во втором массиве имеют p2p_id в первом массиве. Мне нужно найти те, у которых есть тот же p2p_to. просто обновил мой вопрос. – Jenny

+0

Что такое '=> '1''? не нужно ли просто массировать (70,99)? – kennypu

ответ

0
<?php 
class Post 
{ 
    public $p2p_id, $p2p_from, $p2p_to, $p2p_type; 

    /** 
    * @param posts Array Post objects to compare with this post object 
    */ 
    public function findMatchingPosts($posts){ 
     $results = array(); 
     foreach($posts as $post){ 
      if($post->p2p_to == $this->p2p_to && $post->p2p_type == $this->p2p_type){ 
       $results[] = $post;   
      } 
     } 
     return $results; 
    } 
} 
+0

В этом методе, я думаю, мне нужно установить значение vars для значения, которое соответствует моему условию. Вы хотите запустить весь процесс поиска внутри этого класса, включая поиск p2p_ids (первый массив в моем вопросе)? – Jenny

+0

Да, я хочу запустить весь процесс поиска внутри класса. 'findMatchintPosts (...)' сравнивает атрибуты p2p_to и p2p_type, но не p2p_ids. –

Смежные вопросы