Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> tablice?, tablice a petle pomocy!!!
-pit501-
post 31.10.2005, 20:14:19
Post #1





Goście







Czy jest taka mozliwosc aby ponizej zdefiniowana manualnie tablice zdefiniowac za pomoca petli ?
  1. <?php
  2.  
  3. $data = array(
  4. array(  2001,  750),
  5. array(  2002, 1700),
  6. array(  2003, 2000),
  7. array(  2004, 1800),
  8. array(  2005, 1300),
  9. array(  2006,  400)
  10. ); 
  11.  
  12. ?>

ohmy.gif ohmy.gif ohmy.gif ohmy.gif

__
autora tematu proszę o używanie BBcode, i zachęcam do rejestracji
ActivePlayer
Go to the top of the page
+Quote Post
luinnar
post 1.11.2005, 09:49:56
Post #2





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 15.07.2004
Skąd: Bielsko-Biała

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


Można zrobić coś takiego:
  1. <?php
  2. $max = 7; // ilość elementów do wpisania
  3. $data = array();
  4. $wartosc1 = 0;
  5. $wartosc2 = 0;
  6.  
  7. for($i = 0; $i < $max; $i++)
  8. {
  9.     // jakieś instrukcje obliczające wartosc1 i wartosc2
  10.     $data[$i] = array($wartosc1, $wartosc');
  11. }
  12. ?>


Ten post edytował luinnar 1.11.2005, 18:44:49


--------------------
notDevBlog - devblog.luinnar.com
Go to the top of the page
+Quote Post
-pit501-
post 1.11.2005, 12:27:57
Post #3





Goście







Oj te tablice, czy mógłbym jeszcze kogoś prosić o wyjaśnienie dlaczego po wykonaniu ponizszych instrukcji niejest wyswietlana wartosc tablicy o indexie klucz lecz denerwujący napis Array?
  1. <?
  2. $t["klucz"]=array(200);
  3. echo $t["klucz"];
  4. ?>

To jest jedna sprawa a druga to jest mały problem z biblioteką phplot a konkretnie z metodą
  1. <?php
  2.  $graph->SetDataValues($t); 
  3. ?>

która jest w stanie przyjmowac tablice tylku 'typu" array tzn zrobiona w ten sposób:
  1. <?php
  2. $data = array(
  3. array(  2001,  750),
  4. array(  2002, 1700),
  5. array(  2003, 2000),
  6. array(  2004, 1800),
  7. array(  2005, 1300),
  8. array(  2006,  400)
  9. ); 
  10. ?>

po to napisałem wcześniejszego posta czy nie mozna tego zautomatyzować
bo niestety podając jej tak zainicjowaną tablice :
  1. <?php
  2.  
  3. $data = array();
  4. $wartosc= 0;
  5. $max=5;
  6.  
  7. for($i = 1; $i < $max; $i++)
  8. {
  9.  
  10. $wartosc2 = rand();
  11. $data[$i] = $wartosc;
  12.  
  13. }
  14.  
  15. ?>

zwraca to :
Notice: Undefined offset: 0 in c:\usr\apache\httpd\html\phplot.php on line 1749

Warning: array_values(): The argument should be an array in c:\usr\apache\httpd\html\phplot.php on line 1749
Go to the top of the page
+Quote Post
luinnar
post 1.11.2005, 18:44:26
Post #4





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 15.07.2004
Skąd: Bielsko-Biała

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


I
  1. <?php
  2. $t["klucz"]=array(200);
  3. echo $t["klucz"];
  4. ?>
Mamy tutaj doczynienia z tablicą wielowymiarową. To elementu tablicy $t zapisujesz kolejną tablicę, jeśli chcesz wyświetlić wartość (w tym przypadku 200) to musisz to zrobić tak:
  1. <?php
  2. echo $t['klucz'][0];
  3. ?>
Używaj do nazw indeksów tablic znaków ' (apostrof) a nie " (cudzysłów)

II
dałeś:
  1. <?php
  2. for($i = 1; $i < $max; $i++)
  3. ?>
a powinno być:
  1. <?php
  2. for($i = 0; $i < $max; $i++)
  3. ?>
aby numerować od zera.
Mój błąd w przykładzie (już poprawiłem).

Ten post edytował luinnar 1.11.2005, 18:58:36


--------------------
notDevBlog - devblog.luinnar.com
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 16:30