Mailer-Project Bug-Tracker - Branch 0.2.1-FINAL
View Issue Details
0000099Branch 0.2.1-FINALFeature Requestpublic2009-02-28 04:572016-11-23 10:07
Reporteruser13 
Assigned ToQuix0r 
PrioritynormalSeverityfeatureReproducibilityN/A
StatusclosedResolutionwon't fix 
PlatformApache 2.2.9 - mod_php 5.2.6OSWindows Vista Ultimate x64 SP1OS Version6001 SP1
Product Version0.2.1-FINAL 
Target Version0.2.1-FINALFixed in Version0.2.1-FINAL 
Summary0000099: In Funktionen der Hauptsächliche einsatz von $GLOBAL
DescriptionWin in einer Notitz in 0000096 angekündigt nun mein Vorschlag.

Da sich ja etliche nicht vorhandenen Variablen-Fehler durch die Kapselung von require und include ergeben haben, währe es sehr sinvoll, jede Variable die in einer Funktion von Außen hereingebracht werden muss oder nach Ausßen gebracht werden muss, diese von $GLOBAL herein zu holen. Da ja ein global-Statement auch vom Scope der aufrufenden Funktion abhängig ist währe eine Lösung über $GLOBAL sehr sinvoll.

Ich hab da mal für ein kleines Framework eine Funktion geschrieben, die mir Konfigurations-Array per Referenzen hereingeholt hat. Ich werde mir da mal was überlegen.

Alle Funktionen damit auszustatten, währe vielleicht ein wenig zu Aufwändig für 0.2.1 aber in 0.3.0 sollte dieses Prinzip konsequent durchgesetzt werden, um solche Fehler zu vermeiden.
TagsNo tags attached.
related to 0000109new  Zugriffe auf $GLOBALS['cache_array'] in der Cache-Klasse kapseln 
related to 0000100closed Quix0r Falsch leitende Variable $CSS umbenennen und globals vermeiden 
Attached Files

Notes
(0000263)
user13   
2009-02-28 05:36   
(Last edited: 2010-05-28 19:28)
Hab mal ein kleines Beispiel zusammengebastelt, wie das aussehen könnte: http://www.mxchange.stelzi.net.invalid/get_Global.zip

(0000274)
Quix0r   
2009-02-28 17:59   
Erstmal so ansich ein gutes Beispiel. Vielleicht kannst du es noch so umschreiben, dass mehrdimensionale Arrays verarbeitet werden koennen?
(0000306)
Quix0r   
2009-03-08 21:49   
In 0.3.0 werde ich z.B. die Konfiguration per $this->getConfigInstance()->readConfig('some_config_entry') machen. Alles andere (ausser lokale Variablen) kommt per $someInstance herein und kann sauber mit Gettern geholt werden.

Ich verknuepfe dies mal mit dem Ticket 0000109, da dort ebenfalls eine Kapselung Thema ist.
(0000344)
Quix0r   
2009-07-26 16:46   
Die Datei aus Kommentar 263 ist leider nicht mehr vorhanden.
(0000354)
user13   
2009-07-28 17:54   
So ist wieder online.
(0000359)
Quix0r   
2009-07-28 20:51   
Hab mit Commit 1092 die Elemente 'action','what','module' und 'output_mode' (alle in $GLOBALS) in Funktionen verpackt (wrapper-functions.php). Ich denke, eine globale Funktion wie deine waere zu sehr generic.
(0000360)
Quix0r   
2009-07-28 21:18   
Mit Commit 1094 ist nun auch $_CONFIG nicht mehr global, sondern in $GLOBALS['config'] umgewandelt - bis auf ein paar Stellen noch.
(0000380)
Quix0r   
2009-10-11 01:57   
Die letzten Stellen waren in Templates verpackt. Nun sind auch die "gefixt". Momentan ist die ext-sponsor wegen dieser Aenderung defekt. Sollte noch gefixt werden.
(0000381)
Quix0r   
2009-10-11 01:59   
Sollte funktionieren, da {?some_config?} mit dem Rueckgabewert von getConfig('some_config') ausgetauscht wird. :( Ist schon spaet...
(0000576)
Quix0r   
2012-10-08 10:45   
Das Verarbeiten von globalen Einträgen ist nun weitgehenst durch Funktionen gekapselt.
(0000641)
Quix0r   
2016-11-23 10:07   
Und zu damit.

Issue History
2009-02-28 04:57user13New Issue
2009-02-28 04:57user13Statusnew => assigned
2009-02-28 04:57user13Assigned To => Quix0r
2009-02-28 05:36user13Note Added: 0000263
2009-02-28 13:44Quix0rRelationship addedrelated to 0000100
2009-02-28 17:59Quix0rNote Added: 0000274
2009-03-08 21:49Quix0rNote Added: 0000306
2009-03-08 21:49Quix0rRelationship addedrelated to 0000109
2009-03-12 18:07Quix0rProduct Version0.2.1-FINAL =>
2009-03-12 18:07Quix0rBuild => SVN-HEAD
2009-07-26 16:46Quix0rNote Added: 0000344
2009-07-28 17:54user13Note Added: 0000354
2009-07-28 20:51Quix0rNote Added: 0000359
2009-07-28 21:18Quix0rNote Added: 0000360
2009-10-11 01:57Quix0rNote Added: 0000380
2009-10-11 01:59Quix0rNote Added: 0000381
2009-11-25 22:56Quix0rFixed in Version => 0.2.1-FINAL
2009-12-15 11:59Quix0rProjectionnone => major rework
2009-12-15 11:59Quix0rETAnone => > 1 month
2009-12-15 11:59Quix0rSeverityminor => feature
2010-05-28 18:27Quix0rBuildSVN-HEAD => 0.2.1-FINAL
2010-05-28 18:36Quix0rProduct Version => 0.2.1-FINAL
2010-05-28 19:28Quix0rNote Edited: 0000263bug_revision_view_page.php?bugnote_id=263#r74
2010-06-08 03:42Quix0rFixed in Version0.2.1-FINAL =>
2012-10-08 10:45Quix0rNote Added: 0000576
2012-10-08 10:45Quix0rStatusassigned => resolved
2012-10-08 10:45Quix0rResolutionopen => won't fix
2016-11-23 10:06Quix0rFixed in Version => 0.2.1-FINAL
2016-11-23 10:07Quix0rStatusresolved => closed
2016-11-23 10:07Quix0rNote Added: 0000641