Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej. Dowiedz się więcej OK, rozumiem

[php] znalezienie wystapienia klucza w tablicy

Zdecydowałeś się na tworzenie interaktywnych stron przy pomocy PHP? Chcesz w łatwy i szybki sposób zarządzać danymi na swojej stronie? Tutaj znajdziesz pomoc w napotkanych przy tym trudnościach.

[php] znalezienie wystapienia klucza w tablicy

Post 09.03.2011, 00:12:52

Kod: Zaznacz cały
array ( 'request' => array ( 0 => array ( 'id' => '30', 'type' => '8', ), ), )


poszukuje, gdzie $request[KLUCZ]['id'] == 8 (jak jest wystapienie to zwraca TAK);
czy trzeba przejsc przez wszystkie klucze czy da sie w jakis inny sposob (np. in_array()) wykorzystac?

zawsze mnie to zastanawialo

----

Kod: Zaznacz cały
$isset = false; if(!empty($_SESSION['request'])) foreach($_SESSION['request'] as $k => $v) {
            if($_SESSION['request'][$k]['id'] == $r['id']) $isset = true;
         } if(!$isset) $_SESSION['request'][] = array('id' => $r['id'],'type' => $r['type']);
Avatar użytkownikaAndyPSV
Posty: 706
Dołączył(a): 18.07.2004

Re: [php] znalezienie wystapienia klucza w tablicy

Post 09.03.2011, 03:01:25

in_array zbytnio ci nie pomoże bo to jest do szukania wartości. Tutaj masz trochę przerobioną funkcję z komentarzy z manuala. Szuka ona klucza o podanej wartości w tablicy takiej jak twoja:
Kod: Zaznacz cały
<?php

function array_custom_search($needle, $haystack) {
   if (empty($needle) || empty($haystack)) {
      return false;
   }
   foreach ($haystack as $key => $value) {
      foreach ($needle as $nkey => $nvalue) {
         if (!empty($value[$nkey]) && $value[$nkey] == $nvalue) {
            return $key;
         }
      }
   }
   return false;
}

$r = array(
   0 => array('id' => 7),
   1 => array('id' => 9),
   2 => array('id' => 8)
);

var_dump(array_custom_search(array('id' => 8), $r));

?>
Avatar użytkownikaNookie
Rafał Filipek

IT Ninja
IT Ninja

Posty: 6417
Dołączył(a): 14.04.2002
Lokalizacja: Warszawa


Powrót do PHP i bazy danych


 


  • Podobne wątki
    Odpowiedzi
    Wyświetlone
    Ostatni post

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 10 gości

Hosting, Domeny, SSL

Subskrypcja

Mamy 50665 zarejestrowanych użytkowników.
Najnowszy użytkownik: BestHR


Nasi użytkownicy napisali:

  • 936045 wiadomości
  • w 246706 tematach

Najnowsze wpisy na blogu

Najnowsze artykuły

Najaktywniejsi (ostatnie 30 dni)