Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z list(); i explode();
MOniToR
post 1.03.2005, 22:02:25
Post #1





Grupa: Zarejestrowani
Postów: 182
Pomógł: 2
Dołączył: 16.11.2003
Skąd: Wrocław / Skokowa

Ostrzeżenie: (10%)
X----


No to mam inny problem i przeedytowałem temat. Mam zmienną w bazie danych, która dane, które są oddzielone ':' (np. 'dane:dane1:dane2:'). Jak moge z każdej z danych zrobić osobną zmienną w przypadku gdy nie wiem ile tych danych jest? Wiem jak to zrobić gdybym znał ilość danych, jednak bez tego nie umiem.

Ten post edytował MOniToR 1.03.2005, 22:40:03


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
dasko
post 1.03.2005, 23:28:01
Post #2





Grupa: Zarejestrowani
Postów: 179
Pomógł: 0
Dołączył: 9.11.2004

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


Hmm...nie wiem, czy jest do tego jakaś wbudowana funkcja, ale możesz użyć takiego kodu:
  1. <?php
  2. $foo = array(&#092;"value1\", \"value2\", \"value3\", \"value4\");
  3. for($i=0; $i < count($foo); $i++) {
  4. if($i == (count($foo)-1)) {
  5. $strVars .= &#092;"$var\" . $i;
  6. } else {
  7. $strVars .= &#092;"$var\" . $i . \", \";
  8. }
  9. }
  10. $string = &#092;"list(\" . $strVars . \") = $foo;\";
  11. eval($string);
  12. ?>

Przynajmniej działa winksmiley.jpg
Go to the top of the page
+Quote Post
SongoQ
post 2.03.2005, 09:04:25
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Zamiast for mozesz uzyc foreach.


--------------------
Go to the top of the page
+Quote Post
kszychu
post 2.03.2005, 09:18:21
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Cytat(MOniToR @ 2005-03-01 22:02:25)
No to mam inny problem i przeedytowałem temat. Mam zmienną w bazie danych, która dane, które są oddzielone ':' (np. 'dane:dane1:dane2:'). Jak moge z każdej z danych zrobić osobną zmienną w przypadku gdy nie wiem ile tych danych jest? Wiem jak to zrobić gdybym znał ilość danych, jednak bez tego nie umiem.

  1. <?php
  2.  
  3. $tmp = explode(&#092;":\", $zmienna_z_bazy);
  4. foreach($tmp as $indeks => $wartosc) {
  5.  ${&#092;"zmienna\".$indeks} = $wartosc;
  6. }
  7. ?>

I wszystko. Później masz całą serię zmiennych $zmienna1, $zmienna2, ... itd.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
Tata Muminka
post 2.03.2005, 12:07:35
Post #5





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 24.02.2005

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


Z tego co napisalem wynikaloby ze baza, ktora zrobiles nie spelania 1NF, wiec zastanow sie czy nie lepiej bedzie zmienic strukture bazy danych! Pozdrawiam
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: 14.08.2025 - 07:50