$blub = $bla->rofl;

  • geschlossen

  • corema
  • 1700 Aufrufe 5 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • $blub = $bla->rofl;

    nabend
    bin grad dabei mich wieder in php reinzuwursteln und weiß leider nicht was das hier zu bedeuten hat:

    PHP-Quellcode

    1. $blub = $bla->rofl;
    2. echo $bla->rofl;

    ich weiß leider nicht wofür der pfeil ist
    kann mir das ein erklären?
    danke schon mal

    lg corema

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von corema ()

  • Hi,
    so greift man auf normale Klassevariablen und -funktionen zu.
    Bsp.

    Quellcode

    1. class blub {
    2. public $rofl,$lofl;
    3. public function __construct($narf) {
    4. $this->rofl = $narf;
    5. }
    6. private function getBlubbConstruct($notschi) {
    7. require_once('./lib/'.$notschi.'.class.php');
    8. $this->lofl = new blub;
    9. return $this->lofl->masterVar;
    10. }
    11. public function getBlubb($lol) {
    12. if(!$this->lofl->init) $this->getBlubbConstruct($lol);
    13. $this->rofl = $this->lofl['rofl'];
    14. return $this->lofl->data;
    15. }
    16. }
    17. $bla = new blub('mong');
    18. $blub = $bla->rofl;
    19. echo $bla->rofl;
    Alles anzeigen


    Mehr dazu
    PHP: Klassen und Objekte (PHP 5) - Manual

    Gruß
    Broken Sword
    Auf dem Abstellgleis sah man ihn liegen,
    Auf dem Abstellgleis zwischen Schwelle und Gestein,
    Auf dem Abstellgleis im strömenden Regen,
    Auf dem Abstellgleis allein.
  • hm.. so ganz hab ichs noch nicht verstanden, aber das größte hab ich
    hab den code ein wenig verändert. ich weiß leider nicht wofür die 2.zeile ist

    PHP-Quellcode

    1. class blub {
    2. public $rofl,$lofl;
    3. public function __construct($narf) {
    4. $this->rofl = $narf;
    5. $this->masterVar = 'hallo';
    6. }
    7. private function getBlubbConstruct($notschi) {
    8. //require_once('./lib/'.$notschi.'.class.php');
    9. $this->lofl = new blub('d');
    10. return $this->lofl->masterVar;
    11. }
    12. public function getBlubb($lol) {
    13. if(!$this->lofl->init) $this->getBlubbConstruct($lol);
    14. $this->rofl = $this->lofl['rofl'];
    15. return $this->lofl->data;
    16. }
    17. }
    18. $bla = new blub('mong');
    19. $blub = $bla->getBlubb('lol');
    20. echo $blub;echo '1<br>';
    21. echo $bla->rofl; echo '2<br>';
    22. echo $bla->masterVar; echo '3<br>';
    Alles anzeigen

    und ich bekomm einen fehler

    PHP-Quellcode

    1. $this->rofl = $this->lofl['rofl'];

    Fatal error: Cannot use object of type blub as array
  • In der zweiten Zeile werden die Variablen (in dem Fall, rofl und lofl) deklariert. Die kannst du dann via $klasse->variable aufrufen.

    Ehrlich gesagt habe ich einfach drauf los geschrieben - ohne Sinn und Verstand.
    Darum ist einmal lofl eine neue Klasse und einmal, damit es abwechslungsreich aussieht, ein Array -.-" Das passt natürlich nicht zusammen und führt zu einer Fehlermeldung.

    Gruß
    Broken Sword
    Auf dem Abstellgleis sah man ihn liegen,
    Auf dem Abstellgleis zwischen Schwelle und Gestein,
    Auf dem Abstellgleis im strömenden Regen,
    Auf dem Abstellgleis allein.