Einzelnen Beitrag anzeigen

7eddi

Registriert seit: 3. Jun 2006
4 Beiträge
 
#7

Re: [PHP] Klasseninstanzen in PHP

  Alt 3. Jun 2006, 11:30
Also bei mir funktioniert beides, mit und ohne Referenzierung mit &.

Code:
<?php

  header('Content-type: text/plain');

  $objects = array();
 
  class MyClass {
    public $title;
   
    function MyClass($title) {
      $this->title = $title;
      $GLOBALS['objects'][$title] = $this; # bzw. &$this
    }
  }
 
  $myobj = new MyClass('A');
 
  # Objekt verändern
  $objects['A']->title = 'B';
 
  # Objekt-Eigenschaften ausgeben
  echo $myobj.': '.$myobj->title."\r\n";
  echo $objects['A'].': '.$objects['A']->title;

?>
Beidesmal spuckt mir das Script:

Object id #1: B
Object id #1: B

aus. Mich würde aber trotzdem mal interessieren, was bei der Zuweisung von $this nun eigentlich passiert. In Delphi hätte ich jetzt gesagt: Ist doch klar, $this ist ja schon ein Zeiger auf das Objekt, deswegen braucht man das auch nicht zu referenzieren... In PHP bin ich mir grad nicht so sicher .
  Mit Zitat antworten Zitat