Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Optymalizacja i iteracja tablicy wielowymiarowej.
scr1pt3r
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 3
Dołączył: 27.08.2011
Skąd: Los Angeles

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


  1. <?php
  2. $matrix = array( "car1" => array( "pos" => array( "x" => 120,
  3. "y" => 15,
  4. "z" => 340
  5. ),
  6. "rot" => array( "rotX" => 140.0,
  7. "rotY" => 1,
  8. "rotZ" => 90
  9. )
  10. ),
  11. "car2" => array( "pos" => array( "x" => 12110,
  12. "y" => 1115,
  13. "z" => 34110
  14. ),
  15. "rot" => array( "rotX" => 1,
  16. "rotY" => 2,
  17. "rotZ" => 3
  18. )
  19. )
  20. ) ;
  21.  
  22. $iter_cache = "pos" ;
  23. $iter = 1 ;
  24.  
  25. foreach( $matrix as $key => $value )
  26. {
  27. echo "Iteruje macierz obiektu = " . $key . "</br>" ;
  28. foreach( $value[ $iter_cache ] as $key => $value )
  29. {
  30. $iter += 1 ;
  31. echo "Wlasciwosc " . $key . " = " . $value . "</br>" ;
  32. $iter_cache = $iter == 3 ? $iter_cache = "rot" : $iter_cache = $iter_cache ;
  33. }
  34. }
  35.  
  36. ?>


W ramach nauki o tabelkach zrobiłem sobie taką tablice wielowymiarową i ziterować pozycje oraz roacje tych dwóch pojazdów. Co sądzicie o optymalizacji i sposobie iteracji ? Tego co potrzebuje...

Ten post edytował scr1pt3r 27.08.2011, 19:02:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


Nie możesz dwa razy deklarować tej samej zmiennej wewnątrz dwóch lub więcej pętli jeżeli służą do prezentacji tablicy. Mówię o zmiennych $key i $value

  1.  
  2. foreach( $matrix as $key => $value ) {
  3.  
  4. foreach($value as $k => $v) {
  5.  
  6. }
  7. }


Druga sprawa - ten zapis jest nie poprawny (działa ale nadpisujesz dwa razy tą samą zmienną):
$iter_cache = $iter == 3 ? $iter_cache = "rot" : $iter_cache = $iter_cache ;
powinno być:
$iter_cache = ($iter == 3) ? "rot";
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: 7.10.2025 - 17:46