Seltsamer Fehler in PhpStrom mit Namespaces

Hierein gehört alles, was in den übrigen Foren keinen Platz findet. // Please post here in case your topic doesn't fit enywhere else.
Antworten
Benutzeravatar
jwlighting
Beiträge: 466
Registriert: 14.07.2010, 14:23:58
Wohnort: LK Oldenburg
Kontaktdaten:

Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von jwlighting » 20.04.2013, 12:30:05

Hallo zusammen,

ich suche gerade eine Erklärung, weshalb der Namespace \APF\extensions\apfelsms\data für PhpStrom hier nicht exisiert.
Hat das evtl. damit zu tun, das ich mich schon in diesem Nanmespace befinde? Durch den voll qualifizierten Namen sollte das aber ja kein Problem sein.

Vielleicht hat ja jmd. eine Erklärung. PhpStrom Version ist (noch) 4.0.1

LG :)
Jan
Dateianhänge
datanamespace.png
datanamespace.png (83.61 KiB) 5907 mal betrachtet

Menschen irren - Politiker sind Menschen.
Für den Norddeutschen ist 1kW = 2 Pfund Schlick.

Benutzeravatar
dr.e.
Administrator
Beiträge: 4537
Registriert: 04.11.2007, 16:13:53

Re: Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von dr.e. » 20.04.2013, 23:13:18

Hallo Jan,

das Interface heißt SMSMapper, daher muss auch die Datei SMSMapper.php lauten und nicht wie bisher SMSMapperInterface.php. Einige Bennungsfehler - im Sinne der neuen Namespace-Unterstützung, in 1.17 war das noch valide - dieser Art hatte ich schon behoben, diesen offenbar noch nicht. :)
Viele Grüße,
Christian

Benutzeravatar
jwlighting
Beiträge: 466
Registriert: 14.07.2010, 14:23:58
Wohnort: LK Oldenburg
Kontaktdaten:

Re: Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von jwlighting » 22.04.2013, 08:49:17

Ah, da schafft Klarheit. Danke... :oops:

Allerdings hatte ich ähnliche Fehler auch mit dem core\filter oder core\singleton oder core\frontcontroller (und weitere) Namespace.
Das ist imme die selbe Kombination Namespace nicht erkannt (hier das 'data' in rot) und dann die darauf folgende Klasse (logischerweise) auch unbekannt (gelb unterkringelt).
Ich vermute mittlerweile stark, dass man Klassen aus dem selben Namespace wie im aktuellen Scope nicht mit use importieren kann.

Kann das mit der PhpStrom Version zusammenhängen? Dann lohnt sich für mich (spätestens jetzt ;)) Mal ein Update.
Btw.: Die Lizenzen laufen bald ab.

LG :)
Jan

Menschen irren - Politiker sind Menschen.
Für den Norddeutschen ist 1kW = 2 Pfund Schlick.

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von Megger » 22.04.2013, 10:40:43

Ich vermute mittlerweile stark, dass man Klassen aus dem selben Namespace wie im aktuellen Scope nicht mit use importieren kann.
Muss man diese denn überhaupt mit use importieren?
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
jwlighting
Beiträge: 466
Registriert: 14.07.2010, 14:23:58
Wohnort: LK Oldenburg
Kontaktdaten:

Re: Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von jwlighting » 22.04.2013, 12:59:07

Megger hat geschrieben:
Ich vermute mittlerweile stark, dass man Klassen aus dem selben Namespace wie im aktuellen Scope nicht mit use importieren kann.
Muss man diese denn überhaupt mit use importieren?
Vermutlich nicht. Der Denk- (und Migrations-) Fehler liegt darin, dass das Autoloading auch ohne explizites use funktioniert (-> Vermutung!).
Das use ersetzt ja import(). Wobei import sich um das Laden kümmert (jetzt übers Autoloading) und use nur der einfacheren Bennenung im Zusammenhang mit Namespaces dient...

Menschen irren - Politiker sind Menschen.
Für den Norddeutschen ist 1kW = 2 Pfund Schlick.

Benutzeravatar
dr.e.
Administrator
Beiträge: 4537
Registriert: 04.11.2007, 16:13:53

Re: Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von dr.e. » 22.04.2013, 22:41:38

Hallo ihr beiden,
Kann das mit der PhpStrom Version zusammenhängen? Dann lohnt sich für mich (spätestens jetzt ;)) Mal ein Update.
PHPStorm unterstützt - soweit ich das richtig im Kopf habe - seit 5 Namespaces. Sofern das stimmt, sollte es mit der aktuellen 6.0.1 keine Probleme geben (z.B. bei mir).
Btw.: Die Lizenzen laufen bald ab.
Verlängerung ist schon getriggert. :)
Allerdings hatte ich ähnliche Fehler auch mit dem core\filter oder core\singleton oder core\frontcontroller (und weitere) Namespace.
Das sollte für die APF-Ordner core, modules, extensions und tools nicht der Fall sein. Bei mir lokal zeigt PHPStorm keine Fehler an und die Sandbox läuft ohne Probleme.
Vermutlich nicht. Der Denk- (und Migrations-) Fehler liegt darin, dass das Autoloading auch ohne explizites use funktioniert (-> Vermutung!).
Innerhalb des selben Namespace ist kein use notwendig.
Das use ersetzt ja import(). Wobei import sich um das Laden kümmert (jetzt übers Autoloading) und use nur der einfacheren Bennenung im Zusammenhang mit Namespaces dient...
Korrekt, die import()-Statements werden durch die Migrationsskripten durch use ersetzt und sind manchmal nicht ganz sinnig. Deshalb lässt sich die Migration auch nicht zu 100% automatisieren.

Die APF-Komponenten sollten aber inzwischen sauber migriert sein. In den extensions könnte es hier und da aber noch zu Unstimmigkeiten kommen, soweit bin ich mit dem Testen noch nicht gekommen.
Viele Grüße,
Christian

Benutzeravatar
jwlighting
Beiträge: 466
Registriert: 14.07.2010, 14:23:58
Wohnort: LK Oldenburg
Kontaktdaten:

Re: Seltsamer Fehler in PhpStrom mit Namespaces

Beitrag von jwlighting » 23.04.2013, 07:45:21

Danke Christian für den sehr aufschlussreichen Post ;)

Da ich Version 4.0.1 habe, werde ich mir dann mal das Update auf die aktuellste Version "gönnen" (beim letzten mal hat das keinen Spaß gemacht ... :roll: )

LG :)

Menschen irren - Politiker sind Menschen.
Für den Norddeutschen ist 1kW = 2 Pfund Schlick.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast