php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.01.2012, 19:16  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard Objekt instantiieren im Konstruktor vs. Methode

Hi

wieso geht das:

PHP-Code:
private $DBC;
    
    public function 
__construct($file_path) {
    
$this->DBC = new APP_MYSQLI_CONNECTOR('full_rights'); 
aber nicht

PHP-Code:
public function irgendwas() {
$this->DBC = new APP_MYSQLI_CONNECTOR('full_rights');

wenn die Klasse per autoload aus einem per absoluten Pfad beschriebenen Verzeichnis geladen werden soll.

Fehlermeldung: class bla not found
__________________
Es ist schon alles gesagt. Nur noch nicht von allen.
drsoong ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.01.2012, 19:36  
meikel
Gast
 
Beiträge: n/a
Standard

Blöde Frage:
mich machen die großen Buchstaben irre. APP_MYSQLI_CONNECTOR ist also keine Konstante (da nutzt man meist große Buchstaben) sondern ein realer Klassenbezeichner und das Klassenscript heißt dann APP_MYSQLI_CONNECTOR.php?
  Mit Zitat antworten
Alt 19.01.2012, 19:41  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
per autoload aus einem per absoluten Pfad beschriebenen Verzeichnis geladen werden soll.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 19.01.2012, 19:43  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Zitat:
Zitat von meikel Beitrag anzeigen
Blöde Frage:
mich machen die großen Buchstaben irre. APP_MYSQLI_CONNECTOR ist also keine Konstante (da nutzt man meist große Buchstaben) sondern ein realer Klassenbezeichner und das Klassenscript heißt dann APP_MYSQLI_CONNECTOR.php?
Ich benutze die Großbuchstaben für Konstanten, Klassen und Objekte.

Deine Schlussfolgerungen sind aber soweit richtig!
__________________
Es ist schon alles gesagt. Nur noch nicht von allen.
drsoong ist offline   Mit Zitat antworten
Alt 19.01.2012, 19:44  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
und das Klassenscript heißt dann APP_MYSQLI_CONNECTOR.php?
Das könnte schon ein Problem sein beim php5-Autloader (spl).

Zitat:
file_extensions

By default it checks all include paths to contain filenames built up by the lowercase class name appended by the filename extensions .inc and .php.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 19.01.2012, 19:51  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Das könnte schon ein Problem sein beim php5-Autloader (spl).
O.K., die Instanzierung klappt im Konstruktor, aber nicht in einer normalen Methode. Jetzt deutest Du an, dass das wohl irgendwie an der Schreibweise liegt, oder was?

Im php.net autoload manual habe ich hierzu nichts gefunden.

Kannst Du da evtl. hinreichend konkret werden?
__________________
Es ist schon alles gesagt. Nur noch nicht von allen.
drsoong ist offline   Mit Zitat antworten
Alt 19.01.2012, 19:51  
Erfahrener Benutzer
 
Registriert seit: 25.05.2010
Beiträge: 852
PHP-Kenntnisse:
Anfänger
Trainmaster wird schon bald berühmt werden
Standard

nikosch müsste den richtigen Hinweis gegeben haben. Wieso registrierst du nicht eine eigene autoload-Funktion?
Trainmaster ist gerade online   Mit Zitat antworten
Alt 19.01.2012, 19:58  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
O.K., die Instanzierung klappt im Konstruktor, aber nicht in einer normalen Methode.
Kann ich ehrlich gesagt nicht glauben
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 19.01.2012, 20:00  
WilkeDevelop
Gast
 
Beiträge: n/a
Standard

Zitat:
Fehlermeldung: class bla not found
das hilft nicht wirklich weiter.
poste mal bitte den fehlertext bzw. fehlercode
  Mit Zitat antworten
Alt 19.01.2012, 20:07  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Kann ich ehrlich gesagt nicht glauben
Das ist aber genau das Thema. Siehe #1.

Habe es gerade nochmal nachvollzogen. Schiebe ich die Instanzierung in den Konstruktor, wird die Klasse(ndatei) gefunden, packe ich sie in die Methode, die eigentlich mit der Instanz arbeiten soll, heißt es
Zitat:
Fatal error: Class 'APP_MYSQLI_CONNECTOR' not found
__________________
Es ist schon alles gesagt. Nur noch nicht von allen.
drsoong ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Statisch Methode über Objekt erreichbar? K1lgoreTr0ut PHP Einsteiger 15 10.11.2011 18:42
[Erledigt] PHP Objekt serialisieren PeterXV PHP Einsteiger 14 07.07.2011 20:33
Bestehendes Objekt in einer inkludierten File Nutzen MLang PHP Einsteiger 6 25.02.2011 15:45
Wozu brauche ich eigentlich eine abstrakte Klasse? echo PHP Tipps 2010 28 24.11.2010 17:10
Objekt in Session-Array ablegen mupilz PHP-Fortgeschrittene 2 30.08.2010 17:25
Objekt per Klassenmethode löschen Ti-Systems PHP Tipps 2010 4 20.01.2010 19:28
Methode gibt keinen return netdirk PHP Tipps 2009 9 30.12.2009 17:01
[Erledigt] Objekt Iteration Löschmethode stayInside PHP-Fortgeschrittene 10 29.11.2009 15:07
[Erledigt] Objekt an Konstruktor übergeben hawkeye78 PHP Tipps 2009 7 28.02.2009 19:01
Objekt im GET-Query wird nicht übertragen Ralpho PHP-Fortgeschrittene 10 05.05.2008 10:03
[Erledigt] PHP5 OOP Zugriff aus einem Objekt auf ein externes Objekt PHP Tipps 2006 5 28.01.2006 16:05
kann sich ein Objekt selbst serialisieren? ajo_silent PHP Tipps 2005-2 24 27.06.2005 09:13
PHP5: Klassenattribut für statische Methode, mit Vererbung PHP-Fortgeschrittene 9 24.05.2005 09:35
[Erledigt] Probleme mit SESSIONS innerhalb einer METHODE PHP-Fortgeschrittene 0 26.09.2004 16:57

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
objekt-instantiierung, wie heißt es richtig objekt instantiieren klasse instantiieren, app_mysqli_connector

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:00 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum