Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Funktionen überschreiben?

    webald

    • modified Team
    • Beiträge: 2.791
    Funktionen überschreiben?
    am: 03. Juli 2018, 18:08:17
    Ich stehe gerade auf dem Schlauch. Folgende Situation:

    in includes/extra/functions wird eine Funktion tuwas($languages_id) definiert und damit über autoinclude eingebunden.

    Später wird in einem Modul eine Datei includes/tuwasfile.php mit einer Funktion tuwas($stringding, $languages_id) eingebunden.

    Dann wird die Funktion tuwas($stringding, $landuages_id) aufgerufen.

    Ich hätte erwartet, dass beim Einbinden der Datei im Modul ein Fehler kommt "Funktion schon definiert". Stattdessen passiert das nicht.

    Seit wann kann man in PHP Funktionen überschreiben? Oder weiss ich da irgendwas anderes nicht?

    Linkback: https://www.modified-shop.org/forum/index.php?topic=39290.0

    DieterW

    • Mitglied
    • Beiträge: 140
    Re: Funktionen überschreiben?
    Antwort #1 am: 04. Juli 2018, 16:20:36
    Man kann Funktionen überschreiben oder umbenennen, aber nicht so wie Du das beschreiben hast.
    http://de2.php.net/manual/de/function.override-function.php
    http://de2.php.net/manual/de/function.rename-function.php

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Re: Funktionen überschreiben?
    Antwort #2 am: 04. Juli 2018, 21:42:08
    Hallo webald,
    für mich sieht das eher danach aus, dass du eine Kleinigkeit übersehen hast.
    Das Einzige was mir dazu einfällt, doch nicht deiner Beschreibung entspricht:
    Code: PHP  [Auswählen]
    if ( !function_exists('tuwas') ) { function tuwas() { .. } }

    LG, h-h-h

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Funktionen überschreiben?
    Antwort #3 am: 05. Juli 2018, 07:35:26
    Ich suchda jetzt nicht weiter warum das ging. Mich wundert es halt nur, v. a. weil der Code von Ronald stammte.

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Re: Funktionen überschreiben?
    Antwort #4 am: 05. Juli 2018, 08:51:12
    Ist vielleicht eine dieser Funktionen eine Klassenmethode?

    Gruss
    Hanspeter

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Re: Funktionen überschreiben?
    Antwort #5 am: 05. Juli 2018, 10:23:48
    Nachtrag;

    Oder steht in einer der eingebundenen Dateien etwa nach <?php das Wort namespace ?

    Gruss
    Hanspeter

    webald

    • modified Team
    • Beiträge: 2.791
    Re: Funktionen überschreiben?
    Antwort #6 am: 05. Juli 2018, 11:47:25
    weder Klasse, noch namespace. Ich habe eine der beiden Funktioen rausgeworfen und der Shop macht trotzdem was er soll.

    Ich betrachte das hier mal als beendet.
    1 Antworten
    2702 Aufrufe
    08. November 2009, 15:08:11 von Tomcraft
    2 Antworten
    1582 Aufrufe
    21. Oktober 2015, 16:22:25 von Guenter59
    10 Antworten
    4656 Aufrufe
    15. September 2011, 13:21:03 von Toby84
    0 Antworten
    1547 Aufrufe
    02. September 2013, 18:07:49 von downset
               
    anything