Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Array_unique i JSON
zimack
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 5.01.2009

Ostrzeżenie: (0%)
-----


Witam, mam takie pytanie, jak zlikwidować podwójne wyniki z wyszukiwania z 2 wyszukiwarek? Znalazłem funkcje array_unique, ale jakos nie wiem jak ją zastosować w moim przypadku. Skrypt pobiera wyniki wyszukiwania z google i yahoo sw JSON, dekoduje i wyswietla na ekranie, ale sa podwójne wpisy, jak uzyc tej funkcji aby je zlikwidować?


Tablica moja:


$phpobj2 = $json->decode($response);
$phpobj3 = $json->decode($response2);
$i = 0;

$search_results = array();


foreach($phpobj2->responseData->results as $r)

{
$search_results['results'][$i]['title'] = $r->title;
$search_results['results'][$i]['url'] = $r->url;

$search_results['results'][$i]['content'] = $r->content;

$i++;
}


foreach($phpobj3->ResultSet->Result as $t)

{
$search_results['results'][$i]['title'] = $t->Title;
$search_results['results'][$i]['url'] = $t->Url;
$search_results['results'][$i]['content'] = $t->Summary;
$i++;

}

Ten post edytował zimack 25.01.2009, 14:29:46
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ziqzaq
post
Post #2





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

Ostrzeżenie: (0%)
-----


Coś mi się widzi, że jednak zajarzyłem od samego początku.
A to jest unikalne czy nie (tylko nie wnikaj w to, że wyniki mam w tablicach - tak było szybciej)?
  1. <?php
  2. // Przykładowe wyniki w tablicach (u ciebie to obiekty, whatever)
  3. $wyniki_1 = array(
  4.    array( 'url' => 'http://www.nasza-klasa.pl', 'title' => 'nieważne'),
  5.    array( 'url' => 'http://klasa.pl', 'title' => 'nieważne'),
  6.    array( 'url' => 'http://studia.pl', 'title' => 'nieważne'),
  7.    array( 'url' => 'http://programowanie.pl', 'title' => 'nieważne')
  8. );
  9. $wyniki_2 = array(
  10.    array( 'url' => 'http://www.nasza-klasa.pl', 'title' => 'nieważne'),
  11.    array( 'url' => 'http://stara-klasa.pl', 'title' => 'nieważne'),
  12.    array( 'url' => 'http://studio-lotto.pl', 'title' => 'nieważne'),
  13.    array( 'url' => 'http://4programmers.pl', 'title' => 'nieważne')
  14. );
  15.  
  16. $i = 0;
  17. $search_results = array();
  18.  
  19. foreach($wyniki_1 as $r)
  20. {
  21.   $search_results[$r['url']]['title'] = $r['title'];
  22.   //$search_results[$r->url]['content'] = $r->content;
  23.   $i++;
  24. }
  25. foreach($wyniki_2 as $t)
  26. {
  27.   $search_results[$t['url']]['title'] = $t['title'];
  28.   //$search_results[$t->Url]['content'] = $t->Summary;
  29.   $i++;
  30. }
  31.  
  32.  
  33. echo 'Ilość wszystkich: '.(count($wyniki_1) + count($wyniki_2)).'<br/>';
  34. echo 'Ilość unikalnych: '.(count($search_results)).'<br/>';
  35. echo '<pre>'.print_r($search_results,true).'</pre>';
  36. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 18:37