Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] tablica wewnątrz klasy, Problem z użyciem sizeOf
janlgorski
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 13.10.2012

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


Cześć!
Do tej pory przejście na php było dla mnie bezbolesne, ale tego problemu nie mogę pokonać. Piszę skrypt, w którym jest tworzona tablica (array), wewnątrz klasy. Po utworzeniu obiektu klasy, próba uzyskania rozmiaru tablicy (sizeOf) kończy się błędem Undefined Variable.

  1. ///////////////////////////////////////
  2. class klasaWewnetrzna {
  3. public $position;
  4.  
  5. public function __construct() {
  6. $position = array(0);
  7. }
  8.  
  9. }
  10. ///////////////////////////////////////
  11. class positionContainter {
  12. public $red;
  13. public function __construct() {
  14. $this->red = new klasaWewnetrzna();
  15. }
  16. }
  17. ///////////////////////////////////////
  18. class mainObject {
  19. public $id;
  20. public $horizontalPositions;
  21.  
  22. public function __construct() {
  23. $this->horizontalPositions = new positionContainter();
  24. }
  25. }
  26. ///////////////////////////////////////
  27. // kilka razy...
  28. $objectsArray[sizeOf($objectsArray)] = new mainObject(); // tworzę tablicę obiektów
  29. ///////////////////////////////////////
  30. $objectsArray[0]->red->position[sizeOf($objectsArray[0]->red->position)]="cos"; //błąd
  31. print sizeOf($objectsArray[0]->red->position); //błąd
  32. print count($objectsArray[0]->red->position); //błąd
  33. // jeśli jednak wykonam to :
  34. $objectsArray[0]->red->position[0]=1; // OK
  35. print count($objectsArray[0]->red->boltPosition); // zwraca 1


Sprawdzałem i konstruktor się wykonuje, więc powinna być tworzona pusta tablica, której wielkość powinna wynosić "0".
Tego typu konstrukcja z uzyskiwaniem sizeOf jest mi potrzebna do budowania tablicy, sukcesywnego dodawania kolejnych indeksów
$tablica[sizeOf($tablica)] = "nastepny";

Jest szansa, że zaślepłem i po prostu nie widzę czegoś oczywistego, ale czuję, że jestem w kropce. Pomóżcie.
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: 18.09.2025 - 03:56