Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Mały problem z pętlą i tablicą :(
Setesh
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 2.10.2006
Skąd: Wrocław

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


Witam.

Mam (pewnie wg was) mały problem ze sprawdzeniem czy wartość jest w tablicy. Będę wdzięczny za pomoc bo już nie wiem jak to zrobić (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Kod :
  1. <?php
  2. function CheckLanguages($Lang)
  3. {
  4. $Languages = array("pl" => "Polski",
  5.                    "en" => "English",
  6.                    "de" => "Deutsch",
  7.                    "ru" => "Russish");
  8.  
  9. for($i=0; $i<$Languages; $i++)
  10.    {
  11.     if($Languages[0][$i] == $Lang)
  12.       {
  13.        $Lang_supported = true;
  14.        echo '<br>Język obsługiwany : "'.$Lang.'"';
  15.        break;
  16.       }else{
  17.             $Lang_supported = false;
  18.            };
  19.    }      
  20. if($Lang_supported == false)  echo '<br>Język NIE obsługiwany : "'.$Lang.'"';
  21. }
  22.  
  23. ?>


wywołanie przez :
  1. <?php
  2. CheckLanguages("pl");
  3. ?>

jakoś źle mi działa (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Wie ktoś co robię źle ? (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

W dodatku coś mi ten kod zżera procesor (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Ten post edytował Setesh 14.11.2008, 21:57:57
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




  1. <?php
  2. function CheckLanguages($Lang)
  3. {
  4.    $Languages = array("pl" => "Polski",
  5.                   "en" => "English",
  6.                   "de" => "Deutsch",
  7.                   "ru" => "Russish");
  8.  
  9.    echo isset($Languages[$Lang]) ? 'obslugiwany' : 'nieobslugiwany';
  10. }
  11. ?>

Ja bym się jednak zastanowił nad zwracaniem (return) w funkcji prawdy lub fałszu zamiast wypisywania komunikatu. Wtedy kod wyglądałby tak:
  1. <?php
  2. function CheckLanguages($Lang)
  3. {
  4.    $Languages = array("pl" => "Polski",
  5.                   "en" => "English",
  6.                   "de" => "Deutsch",
  7.                   "ru" => "Russish");
  8.  
  9.    return isset($Languages[$Lang]);
  10. }
  11.  
  12. // i wywolanie funkcji nieco inne niz Twoje
  13. echo CheckLanguages('pl') ? 'obslugiwany' : 'nieobslugiwany';
  14. ?>


Ten post edytował phpion 14.11.2008, 22:00:12
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: 13.10.2025 - 17:20