SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 27.11.2002, 17:18:56
Spicedwarf Spicedwarf ist offline
Anfänger
 
Registriert seit: Nov 2002
Ort: Hamm
Alter: 45
Beiträge: 2
Problem mit OOP in PHP

Hallo Leute,

ich habe da ein Problem mit OOP in PHP.

Ziel des Codings ist es, eine Objekt-Hierarchie aufzubauen (wem es was sagt: "Composite Pattern").

Da ich entsprechend OOP-Philosophie nur über get-Methoden auf die Attributwerte eines Objekts zugreifen möchte, ist es an einigen Stellen des Skripts nötig, diese get-Methoden zu verschachteln (s. Endes des Codings ...).

Habe schon "alle" mir einigermaßen logisch erscheinenden Variationen von Klammerung bis Typkonvertierung ausprobiert. Leider wird dann immer ein "parse error" ausgegeben oder angemeckert, dass die aufgerufene Operation nicht existiert!

-

Ist diese Art des Aufrufs nicht möglich oder ist einfach die Schreibweise anders !?

Wer kann mir weiterhelfen !!?

Thanks,
Marco


*********
* Coding: *
*********

// Klasse Parent
class Parent {

var $name;
var $child;

function Parent($name) {
$this->name = $name;
}

function setChild($child) {
$this->child = $child;
}

function getName() {
return $this->name;
}

function getChild() {
return $this->child;
}

}

// Klasse Child
class Child {

var $name;

function Child($name) {
$this->name = $name;
}

function getName() {
return $this->name;
}

}

// Client Code
$parent = &new Parent("Arno Amöbe");
$child = &new Child("Peter Puffer");
$parent->setChild($child);

# PROBLEM: (?)
$child_name = $parent->getChild()->getName();
Mit Zitat antworten
  #2  
Alt 27.11.2002, 17:44:23
Dago Dago ist offline
Member
 
Registriert seit: Mar 2002
Beiträge: 548
[...] getChild() -> getName() [...]
So etwas ist nicht möglich, denn "getChild()" ist kein Objekt.
Mit Zitat antworten
  #3  
Alt 28.11.2002, 12:09:45
Benutzerbild von Matt
Matt Matt ist offline
Member
 
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
an Dago: doch ist es.. schau dir mal an, was getChild() zurückgibt...

die art des Aufrufs wird allerdings trotzdem höchst wahrscheinlich nicht unterstützt, weil objektorientierung in PHP nicht das gelbe vom ei ist.
was sicher geht ist:

$partent->$child->getname();

Die meißten OOP Ansätze kannst du vergessen, was PHP betrifft, get und set methoden sind zwar gut aber wenn es nicht mal zugriffsrechte gibt. (die sollen aber in PHP 5 kommen)
Mit Zitat antworten
  #4  
Alt 28.11.2002, 12:39:16
Spicedwarf Spicedwarf ist offline
Anfänger
 
Registriert seit: Nov 2002
Ort: Hamm
Alter: 45
Beiträge: 2
Problem mit OOP in PHP

Vielen Dank für die Tips,

werde dann mal geduldig auf PHP5 warten ;) ...
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:36:09 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt