Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Czy w tablicy znajduje sie dany element?
Lombi
post
Post #1





Grupa: Zarejestrowani
Postów: 237
Pomógł: 11
Dołączył: 12.04.2006

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


Męcze się z tym badziewiem juz jakiś czas i nie chce mi to działać.
Mama tablice:

  1. <?php
  2. $table = array('id' => 1, 'type' => 0, 'name' => 'Link1',
  3.                'id' => 2, 'type' => 0, 'name' => 'Link2',
  4.                'id' => 3, 'type' => 0, 'name' => 'Link3',
  5.                'id' => 4, 'type' => 0, 'name' => 'Link4');
  6. ?>


Chcę mozliwie w jak najlatweijszy sposób sprawdzić czy $table['type'] ma gdzieś wartość 0.
Rozważałem in_array, array_search i array_keys i nie moge tego ogarnąc żeby działało jak należy.

Aktualnie mam tak:
  1. <?php
  2. if(in_array(0, $table['type']))
  3.    echo 'jest';
  4. else
  5.    echo 'nie ma';
  6. ?>


Ten post edytował Lombi 4.11.2008, 17:22:06
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
YaQzi
post
Post #2





Grupa: Zarejestrowani
Postów: 94
Pomógł: 31
Dołączył: 12.10.2008
Skąd: WAT

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


Ano... JoShiMa dobrze gada. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Jeśli id są unikalne to tablica może wyglądać np tak:

  1. <?php
  2. $table = array('1' => array('type' => 0, 'name' => 'Link1'),
  3.               '2' => array('type' => 0, 'name' => 'Link2'),
  4.               '3' => array('type' => 0, 'name' => 'Link3'),
  5.               '4' => array('type' => 0, 'name' => 'Link4')
  6.               );
  7. ?>


A sprawdzenie jest już proste.

  1. <?php
  2. $jest = 0;
  3. foreach($table as $id => $tablica){
  4.    if($tablica['type'] == 0){
  5.        $jest = 1;
  6.    }
  7. }
  8. if($jest == 1){
  9.    echo "jest";
  10. }
  11. else{
  12.    echo "nima";
  13. }
  14. ?>


Jeśli masz problem z tablicą, zawsze sprawdzaj czy prawidłowo ją zaprojektowałeś. print_r($nazwa_tablicy);
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: 5.10.2025 - 18:45