Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]while(list(..)=each(...)), czegos nie rozumiem...
Kedan
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 1
Dołączył: 20.07.2007

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


Mam funkcje, która wyświetla ilość elementów w tablicy asocjacyjnej _form[], oraz nazwy kluczy tej tablicy:
Kod
    function Dir($_MODE){
        switch($_MODE){
            case "form":{
                $i=0;
                $s = count($this->_form);
                while(list($k,$v) = each($this->_form)){
                    $tmpTab[$i] = $k;
                    $i++;
                }//while
                $tmp = implode("<br>",$tmpTab);
                wypisz("<center>- BEGIN -</center><br><br>Formularze<br> There is ".$s." forms in class:<br><br>".$tmp."<br><br><center>- END -</center>");
            }//case
            break;
        }//switch
    }//function

Kiedy funckję wywołuje dwa razy z rzędu:
Kod
Dir(ble);
Dir(ble);

pierwsze wywołanie działa bez zarzutu a w drugim pokazuje mi błąd w linii
Kod
$tmp = implode("<br>",$tmpTab);


Czy ktoś mógłby mi wyjaśnić czemu tak się dzieje?
Go to the top of the page
+Quote Post
NoiseMc
post
Post #2





Grupa: Zarejestrowani
Postów: 398
Pomógł: 10
Dołączył: 24.11.2004
Skąd: Łódź

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


Moze doszedl do konca tablicy i ustawil sobie wskaznik na koncu tablicy ... sprobuj http://us2.php.net/reset albo uzywaj foreach zamiast list ... each


--------------------
Go to the top of the page
+Quote Post
Kedan
post
Post #3





Grupa: Zarejestrowani
Postów: 53
Pomógł: 1
Dołączył: 20.07.2007

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


Ok. Zrobiłem z foreach() i działa bez zarzutu. Dzięki za szybko odpowiedź.
Pozdro. smile.gif
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 Aktualny czas: 21.08.2025 - 07:39