php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 04.11.2009, 13:10  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.637
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
wäre wieder die Frage, was er da treibt und wo dieser Codeschnipsel versteckt ist.
Demnach müsste $this->Smarty auf einen magic Getter verweisen der dann wohl das Smarty Objekt zurück gibt. Ein Aufruf dessen im Konstruktor einer Kindklasse ohne vorher parent::__construct() aufzurufen "könnte" also den Unterschied ausmachen.

Innerhalb der Templates greift man ja auch über {$Smarty} auf das Smarty Objekt zu.
Dark Guardian ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 04.11.2009, 13:27  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.269
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Bitte poste doch jetzt mal relevanten Code, also keinen Fantasiecode!

Den Parent-Konstruktor rufst du mit parent::__construct() auf. Error-Reporting sollte E_ALL | E_STRICT eingestellt sein, dann wirst du den Fehler schnell finden.
Chriz ist offline  
Alt 04.11.2009, 13:39  
Neuer Benutzer
 
Registriert seit: 04.11.2009
Beiträge: 8
PHP-Kenntnisse:
Fortgeschritten
Powie befindet sich auf einem aufstrebenden Ast
Powie eine Nachricht über ICQ schicken Powie eine Nachricht über MSN schicken
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
Wenn es um Konstruktoraufrufe gehen würde, also um den parent-Konstruktor, passt aber die Aussage eingangs nicht.

Dies ruft in PHP 5 niemals einen Konstruktor auf. Da nach nach den Angaben des Autors aber 5.2.x zum Einsatz kommt und beschrieben wird, dass es mit diesem Befehl (was wie du richtigerweise schreibst nichts anderes als ein Zugriff auf eine Membervariable ist) das geht, wäre wieder die Frage, was er da treibt und wo dieser Codeschnipsel versteckt ist. Womit ich wieder bei meinem Eingangspost und der dortigen Frage wäre.

Wenn ich eines nicht abkann, ist es Arroganz. Hilfe ablehnen ist eine Sache. Jedoch trotz besserem Wissen auf etwas zu bestehen, das ist Arroganz. Ich werde hier nicht mehr weiterhelfen und einen großen Bogen um das Thema machen.
Sieh das doch nicht so persönlich! ..... Genau so beschreibt es im übrigen auch die Smarty Doc:
Smarty.

Ich habe jetzt nach weiterem Lesen der phps den Unterschied zumindest zwischen der V2 und V3 gefunden, und wieso das bisher mit ->Smarty(); funktioniert hat und nun nicht mehr. Das "Verständnissproblem" von mir ist somit auf jeden Fall erstmal gelöst!
Powie ist offline  
Alt 04.11.2009, 14:31  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.240
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Sorry nochmal nachzuhaken. Ich seh es nicht persönlich. Ich hab mich jedoch gewundert, wieso da plötzlich ein [erledigt] davor stand, daher habe ich doch nochmal hier reingeschaut. Mich würde jetzt mal interessieren, was das tatsächliche Problem war. Das hilft eventuell auch anderen, die dieses Thema per Forumsuche finden.

Im übrigen hat die Installationsanleitung exakt nichts mit deinem Problem zu tun, wie du es eingangs gepostet hast. Dort wird auch das Ableiten der Smarty-Klasse nicht mal im Ansatz angesprochen.

Das, was im Handbuch steht ist die Objekt-Erstellung:
PHP-Code:
new Smarty(); 
vs.
PHP-Code:
new Smarty
Wenn du wirklich darüber gestolpert bist, dann kriegst du auch eine Antwort: Das ist beides inhaltlich völlig gleich. Beides legt ein Objekt an und ruft den Konstruktor ohne weitere Argumente auf. Dass PHP beide Arten der Syntax akzeptiert, ist "historisch gewachsen". Inwieweit es das aktuell noch akzeptiert oder in Zukunft akzeptieren wird, weiss ich nicht mal, da ich die Variante ohne Klammern für abartig halte und nicht nutze (da kommt der Java-Mensch in mir wohl durch *g*)

Dein Problem, dass Session-Variablen nicht richtig verwendet werden o.ä. hat mit dem unterschiedlichen Konstruktoraufruf nichts zu tun, da es wie gesagt inhaltlich zwischen beiden Varianten keinerlei Unterschied gibt. Dein ursprünglich gepostetes "$this->Smarty()" hat mit dem Anlegen eines Objektes per Operator "new" jedoch ebenfalls rein gar nichts zu tun.

Also: Für dein nächstes Problem, wie Chriz schreibt, keinen Fantasiecode posten, sondern dein konkretes Problem vernünftig beschreiben. Ansonsten könnte man noch auf die Idee kommen, du seist ein Troll.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline  
Alt 02.01.2010, 20:13  
Neuer Benutzer
 
Registriert seit: 02.01.2010
Beiträge: 1
PHP-Kenntnisse:
Fortgeschritten
Sammie befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
Im übrigen hat die Installationsanleitung exakt nichts mit deinem Problem zu tun, wie du es eingangs gepostet hast. Dort wird auch das Ableiten der Smarty-Klasse nicht mal im Ansatz angesprochen.
Doch wirds, aber eine Seite in der Doku weiter
Smarty
Sammie ist offline  
Alt 02.01.2010, 22:53  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.240
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Aber auch dort steht kein $this->Smarty(); Weils keinen Sinn macht.

Im übrigen bitte tote Themen sterben lassen
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline  
Alt 02.01.2010, 23:14  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
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:
Aber auch dort steht kein $this->Smarty(); Weils keinen Sinn macht.
Doch im Konstruktor abgeleiteter Methoden.
Zitat:
PHP-Code:
class Smarty_GuestBook extends Smarty {

   function 
Smarty_GuestBook()
   {
  
// Konstruktor. Diese Werte werden für jede Instanz automatisch gesetzt

  
$this->Smarty(); 
Oder war das jetzt ein Schreibfehler und Du meintest $this->Smarty; ? Das würde in der Tat nur mit Gettern einen Sinn machen (und das wäre schon sehr weit hergeholt).
__________________
--
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 gerade online  
Alt 02.01.2010, 23:36  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.240
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Hmmm ne. Ich habe in Eclipse geschaut, wo ich die Hilfe von 3.0 eingebunden hab. Da stehts so in der Tat nicht mehr drin. Online für die ältere Version sind da wohl noch PHP4-kompatible Sachen drin. Davon abgesehen war das in der Tat ein freudscher Verschreiber. Ich hatte noch im Hinterkopf, dass der Autor behauptet hatte, dass er "Smarty mittels $this->Smarty aktivieren" muss. Da war wohl in meiner Erinnerung was durcheinander gekommen.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline  
 


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
Smarty und das MVC [-UFO-]Melkor Software-Design 11 29.12.2008 13:01
Smarty + MySQL = immer falsche Ausgabe m0use` PHP Tipps 2006 44 21.11.2008 20:30
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
Problem mit Smarty ccfirefox HTML, Usability und Barrierefreiheit 1 25.10.2007 16:19
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
problem mit javascript und smarty snatch-ic HTML, Usability und Barrierefreiheit 2 08.06.2006 22:11
Smarty verschachtelt snatch-ic PHP Tipps 2006 16 28.02.2006 20:54
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
[Erledigt] Navigation auf Smarty umstellen?! PHP-Fortgeschrittene 3 10.01.2006 09:19
Problem mit Smarty b++ PHP Tipps 2005-2 1 12.09.2005 22:12
[Erledigt] Seltsames Problem mit Smarty PHP-Fortgeschrittene 3 28.07.2005 00:42
Smarty und PHP-Skript Problem PHP Tipps 2004-2 2 03.12.2004 22:27
frage zu smarty eQuin PHP-Fortgeschrittene 1 18.10.2004 16:21
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
smarty v2 v3, smarty magic getter, smarty extends does not work, smarty extends function, smarty differenz, smarty 3 extends, php extends, error reporting aktivieren smarty, smarty unterschied => und ->, smarty extend, php smarty ableiten

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:41 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