Ergebnis 1 bis 10 von 10

Thema: Übergebene Bezeichnung einer Constante als String verwenden

  1. #1
    Meister(in) Avatar von Teron Gerofied
    Registriert seit
    26.01.2008
    Ort
    serverraum
    Alter
    26
    Beiträge
    347
    Danke
    0
    Bekam 1 mal "Danke" in 1 Posting

    Standard Übergebene Bezeichnung einer Constante als String verwenden

    Hallo,

    ich habe folgendes Problem:

    Ich habe eine Klasse, einer Funktion darin übergebe ich per Parameter eine Konstante ( es MUSS eine Konstante sein )

    diese sieht zB so aus:

    PERMISSION_NEWS = 1

    nun brauche ich genau diese Bezeichnung PERMISSION_NEWS damit ich einen Postfix dranbasteln kann (dynamisch natürlich), sprich so:

    PHP-Code:
    $default_strength constant$name_der_constante "_DEFAULT" ); 
    Leider finde ich dazu bei Google nur die ReflectionClass oder get_defined_constants() und sowas, was mir in dem Fall nicht wirklich weiterhilft, da ich da ja auch jeweils den Konstantennamen als String brauche...

    Ich kann die ganzen Konstanten auch nicht per foreach durchlaufen und über den Variablennamen checken, da da das nur Zahlen sind und sich das mit vielen anderen Konstanten überschneiden könnte.

    Jemand eine Idee ? Nur zu Erinnerung: Ich MUSS eine Konstante übergeben, keinen String

    Lg
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    Geändert von Teron Gerofied (23.05.2013 um 21:24 Uhr)
    PHP-Code:
    if(isset($this) || !isset($this)){ // that's the question... 

  2. #2
    Meister(in)
    Themenstarter
    Avatar von Teron Gerofied
    Registriert seit
    26.01.2008
    Ort
    serverraum
    Alter
    26
    Beiträge
    347
    Danke
    0
    Bekam 1 mal "Danke" in 1 Posting

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    *push*
    PHP-Code:
    if(isset($this) || !isset($this)){ // that's the question... 

  3. #3
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    http://www.php-resource.de/forum/php...-aufrufen.html so evtl?

    is der 5te treffer beim gockel
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  4. #4
    Meister(in)
    Themenstarter
    Avatar von Teron Gerofied
    Registriert seit
    26.01.2008
    Ort
    serverraum
    Alter
    26
    Beiträge
    347
    Danke
    0
    Bekam 1 mal "Danke" in 1 Posting

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    Nope, hilft nicht.

    Es geht eben nicht darum wie ich dynamisch auf den Inhalt der Konstante komme sondern auf den Bezeichner
    PHP-Code:
    if(isset($this) || !isset($this)){ // that's the question... 

  5. #5
    Meister(in) Avatar von lukasn
    Registriert seit
    23.02.2008
    Ort
    Schweiz
    Alter
    27
    Beiträge
    491
    Danke
    2
    Bekam 12 mal "Danke" in 11 Postings

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    Ich kenne keine Möglichkeit um das hin zu bekommen. Ich frage mich allerdings, wo diese implementation Sinn machen würde. Nach der Beschreibung die du hier gibst verwendest du deine Konstante als ein Key/Value Pair, dafür sind Konstanten nicht gedacht.

    Warum *muss* es eine Konstante sein?

  6. #6
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    naja alternativ stopf die konstante in ein assoziatives array mit dem konstantennamen als bezeichner
    bau dir ein komplexeres objekt
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  7. #7
    Meister(in) Avatar von lukasn
    Registriert seit
    23.02.2008
    Ort
    Schweiz
    Alter
    27
    Beiträge
    491
    Danke
    2
    Bekam 12 mal "Danke" in 11 Postings

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    Das wär auch mein Ansatz. Als ein Beispiel, so speichere ich in meinen Applikationen Werte, die nicht regelmässig verändert weden, aber von verschiedenen Klassen benötigt werden:

    PHP-Code:
    <?php

    class Registry {

        private 
    $data = array (
            
    'KEY'             => 'value',
            
    'ANOTHER_KEY'    => 'value2',
            
    'ETC'            => '…',
        )
        
        public function 
    __get($key)
        {
            if ( 
    array_key_exists($name$this->data) )
            {
                return 
    $data[$key];
            }
            else
            {
                throw new 
    InvalidArgumentException('Registry key does not exist');    
            }
        }
        
        
    pubic function getAll()
        {
            return 
    $data;
        }
        
    }
    Geändert von lukasn (30.05.2013 um 18:51 Uhr) Grund: Zeilenumbrüche repariert

  8. #8
    Meister(in)
    Themenstarter
    Avatar von Teron Gerofied
    Registriert seit
    26.01.2008
    Ort
    serverraum
    Alter
    26
    Beiträge
    347
    Danke
    0
    Bekam 1 mal "Danke" in 1 Posting

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    Wofür sind Konstanten dann gedacht ? ^^

    Ehrlichgesagt find ich die Objekt-Variante auch schöner - ich hab diese Struktur von Konstanten, die alle gewisse konstante Daten speichern und projektweit zur Verfügung stellen, noch aus dem alten Bauplan des phpBB2 übernommen - das ist nun auch schon locker 5-6 Jahre her und seit dem nie in Erwägung gezogen etwas anderes zu machen o.o

    Ergänzung:
    Es geht mir vorallem deswegen darum Konstanten zu verwenden, weil sie sich von den üblichen Variablen abheben, erstens dadurch, daß sie alle groß geschrieben sind und durch das fehlende $. Es hilft mir schon ziemlich bei der Lesbarkeit.
    Geändert von Teron Gerofied (30.05.2013 um 23:12 Uhr)
    PHP-Code:
    if(isset($this) || !isset($this)){ // that's the question... 

  9. #9
    Forum Guru Avatar von synaptic
    Registriert seit
    20.06.2007
    Ort
    Butzbach-Wiesental
    Beiträge
    10.901
    Danke
    45
    Bekam 48 mal "Danke" in 46 Postings
    Blog-Einträge
    1

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    Konstanten sind dafür da, dass man werte, die nicht verändert werden dürfen im script vorhalten kann.
    wenn man diese konstanten im inlcudierungsweg weit genug oben ansiedelt, ist es recht easy applikationsweit eben diese werte vorhalten zu können.
    ich nutze konstanten nur für übersetzungen, die nicht in einer datenbank stehen.
    zb für homepages, die multilingual sein sollen, aber die nicht komplett datenbankbasiert sind.
    so kann man prima eine csv einlesen und dann on the fly aus der csv ne php-file generieren, wo diese translations drin sind.

    muss man nur noch für die entsprechende sprache die richtige sprachdatei laden und fertig.

    dann gibt es noch mathematische konstanten, die man so setzen kann, aber auch eben, wie bereits erwähnt einfach dinge, die man nicht ändern können soll.
    für alles andere gibt es datentypen in form von variablen

    also machst du doch irgendwas falsch, wenn du konstanten für bessere lesbarkeit nutzt^^
    KEIN support via pn, email, messenger oder falsch geposteten threads
    Futter für deine Schnuffelzwerge gibts bei den Schnuffelzwergen TOP Qualität, also klicken und kaufen

  10. #10
    Meister(in)
    Themenstarter
    Avatar von Teron Gerofied
    Registriert seit
    26.01.2008
    Ort
    serverraum
    Alter
    26
    Beiträge
    347
    Danke
    0
    Bekam 1 mal "Danke" in 1 Posting

    Standard AW: Übergebene Bezeichnung einer Constante als String verwenden

    Ich nutze Konstanten zB so wie du sagtest als include Datei, für Tabellennamen, zB, oder auch für Statuswerte, die dann im Prinzip eine Zahl lesbar machen.
    PHP-Code:
    if(isset($this) || !isset($this)){ // that's the question... 

Ähnliche Themen

  1. string Teile einer Funktion in variable
    Von Garavani im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 18.05.2013, 19:02
  2. # JS - String zerlegen, aber nur letzten zerlegten Wert (Array) verwenden
    Von mensaaa im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 19.04.2012, 23:12
  3. Cookies in einer Funktion verwenden
    Von unregistriert im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 17
    Letzter Beitrag: 20.04.2011, 17:09
  4. String constante mit sonderzeichen
    Von newbe im Forum Forum für alle anderen Programmiersprachen
    Antworten: 2
    Letzter Beitrag: 25.09.2008, 15:56
  5. grafik anstelle einer schaltfläche für formulare verwenden?
    Von matthias im Forum HTML & CSS Forum
    Antworten: 29
    Letzter Beitrag: 07.08.2006, 21:11

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •