Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Pętla i tablica
pjanek
post 1.03.2007, 22:13:59
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 1.03.2007

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


Witam wszystkich,
chciałbym poprosić znawców o pomoc w następującej sprawie
poniższa pętla dodaje miesiące w danym roku (tu 1998)
  1. <?php
  2. for ($n=1;$n<=10;$n++) {
  3.  
  4. $znacznik =  mktime(0,0,0,02,01,1998); // 1998.02.01
  5. $znacznik2 = gmmktime(0,0,0,02,01,1998);
  6.  
  7. $dzien = date("Y",$znacznik).".".date("m",$znacznik).".".date("d",$znacznik);
  8. $a=30.5*$n;
  9. $roznica=$znacznik2+60*60*24*$a; 
  10. $nowadata = gmdate("Y",$roznica).".".
  11. gmdate("m",$roznica)/*.".".gmdate("d",$roznica)*/;
  12. $mi=gmdate("m",$roznica);
  13. ?>


i przekazuje je do tablicy $t,

  1. <?php
  2. if ( gmdate("Y",$roznica)==1998){
  3.  
  4. $t=array($nowadata);
  5.  
  6. }
  7. ?>

problem jest taki ze jak dam echo $t[0]; to efekt jest taki
1998.03 1998.04 1998.05 1998.06 1998.07 1998.08 1998.09 1998.10 1998.11 1998.12
a chciałbym aby indeks tablicy zwrócił mi tylko datę 1998.03
Jak zrobić aby datę przekazać tak do tablicy, abym mógł sobie wybrać która datę ma wyswietliś np: $t[3] rezultat 1998.06

z góry dziękuje za zainteresowanie
pzdr

plis, czy ktoś może mi pomóc w tym sad.gif
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
BiRetis
post 1.03.2007, 22:40:17
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 27.02.2007
Skąd: Zielona Góra

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


nie wiem czy oto ci chodzi cool.gif

  1. <?php
  2. $t = explode(' ', $nowadata);
  3. ?>


Ten post edytował BiRetis 1.03.2007, 22:41:10


--------------------
Usługi internetowe - BiRetis

Aplikacje internetowe, bazy danych, strony WWW, FLASH, ochrona danych.
Go to the top of the page
+Quote Post
pjanek
post 2.03.2007, 10:22:22
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 1.03.2007

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


mogło by być i tak, ale efektem tego zapisu jest to, że jak dam
  1. <?php
  2. echo $t[0];
  3. ?>
to zwraca mi dalej całość
1998.03 1998.04 1998.05 1998.06 1998.07 1998.08 1998.09 1998.10 1998.11 1998.12
a jak dam
  1. <?php
  2. echo $t[1];
  3. ?>
to już żadnego efektu nie ma
A dodam jeszcze że kod
  1. <?php
  2. $r=count($t);
  3. echo $r;
  4. ?>
cały czs zwraca 1. Tak jakby widział tylko jeden element tablicy?questionmark.gif
proszę o pomoc bo nie wiem gdzie jest błąd
pzdr
Go to the top of the page
+Quote Post
Kicok
post 2.03.2007, 18:27:23
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


  1. <?php
  2. if ( gmdate("Y",$roznica)==1998){
  3.  
  4. $t[] = $nowdata;
  5.  
  6. }
  7. ?>


albo:
  1. <?php
  2. if ( gmdate("Y",$roznica)==1998){
  3.  
  4. array_push($t, $nowadata);
  5.  
  6. }
  7. ?>


tylko wypadałoby jeszcze przed pętlą zadeklarować zmienną $t w ten sposób:
  1. <?php
  2. $t = array();
  3. ?>


--------------------
"Sumienie mam czyste, bo nieużywane."
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.08.2025 - 23:53