+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 14
  1. #1
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,161

    Standard Wie übergebe ich einen Array oder eine function an eine public Methode von IP-Symcon

    Bei public Methoden muss ja in IP-Symcon der Variablentyp davor geschrieben werden.
    Wie gehe wich vor wenn ich einen Array oder eine Funktion an die public methode übergeben will?
    Muss ich z.B. den Array als Workarround als JSON String übergeben und dann in der Methode wieder in einen Array zurückwandeln oder gibt es auch einen Weg den Array direkt an die public Methode zu übergeben? Wie geht man da bei Funktionen vor? Muss ich da ebenfalls den Funktionsnamen als string übergeben oder gibt es eine Möglichkeit die Funktion direkt zu übergeben?

  2. #2
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    8,671

    Du kannst (noch) den Typ einfach weglassen. Und dann ein Array übergeben.
    Ansonsten musst du den Umweg über einen String nehmen.

    Die Frage mit dem Funktionsnamen verstehe ich nicht.
    Michael
    Geändert von Nall-chan (30.10.18 um 19:27 Uhr)
    on Win7VM (ESXi): I5, 24GB RAM, HW-RAID5, 3xSat | HW: CCU + 123 Geräte (506ch), EM1000, CUL, 1Wire, XBee, ELRO 433MHz, FritzBox Cable, Android Phone + Tablet, Samsung C-Serie TV +SamyGo-Ext, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, Rising AV, Piwik, RoundCube, Wordpress, WinLIRC, WHS2011, MediaPortal, XBMC

  3. #3
    Registriert seit
    Sep 2014
    Ort
    Limeshain (Hessen)
    Beiträge
    5,279

    Abend!

    Meinst du mit Function als String übergeben das hier?
    PHP: call_user_func - Manual

    So rufe ich teilweise einfach functions auf die ich als String sonstwo her habe oder übergebe...

    Grüße,
    Chris
    IP-Symcon Module >> www.bayaro.net << Verfügbare Module: BatterieMonitor, BundesligaTabelle, Enigma2BY, HeizölPreise, Helios, Horoskop, HostMonitor, IPSInformations, MELCloud, Müllabfuhr, PJLink, RSS, TankerkönigSpritpreise, xREL
    IPS Unlimited, ~1200 Scripte, ~7000 Variablen

  4. #4
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,161

    Zitat Zitat von Nall-chan Beitrag anzeigen
    Du kannst (noch) den Typ einfach weglassen. Und dann ein Array übergeben.
    Ansonsten musst du den Umweg über einen String nehmen.
    Und was ist jetzt zukunftssicherer, als String übergeben und dann umwandeln oder den Typ weglassen und als Array? Ich habe wenig Lust dann wieder alles umzubauen, nur weil sich mal wieder was in IP-Symcon ändert.

  5. #5
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    8,671

    Das (noch) sagt es doch, das es nicht zukunftssicher ist.
    Michael
    on Win7VM (ESXi): I5, 24GB RAM, HW-RAID5, 3xSat | HW: CCU + 123 Geräte (506ch), EM1000, CUL, 1Wire, XBee, ELRO 433MHz, FritzBox Cable, Android Phone + Tablet, Samsung C-Serie TV +SamyGo-Ext, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, Rising AV, Piwik, RoundCube, Wordpress, WinLIRC, WHS2011, MediaPortal, XBMC

  6. #6
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,161

    Zitat Zitat von Bayaro Beitrag anzeigen
    Meinst du mit Function als String übergeben das hier?
    PHP: call_user_func - Manual

    So rufe ich teilweise einfach functions auf die ich als String sonstwo her habe oder übergebe...
    Ja so was in der Art meine ich. Kannst du mir ein Beispiel geben wie man so was mit einer public Methode von IP-Symcon nutzt wie ist das dann von der Syntax? Ich will also Parameter und eine function übergeben

    Sieht das dann so aus?
    PHP-Code:
    public myfunction(string $namestring $getter)
    {
    call_user_func($getter);

    Wie komme ich dann zu einen anderen Methode, finde in der Doku nur eine normale Funktion, ich muss ja wohl noch irgendwie $this mit schreiben nur wie sieht da die Syntax aus?

  7. #7
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,161

    Zitat Zitat von Nall-chan Beitrag anzeigen
    Das (noch) sagt es doch, das es nicht zukunftssicher ist.
    Ich würde mir dazu mal eine Stellungnahme von IP-Symcon wünschen, dann weis man wenigstens was geplant ist. Also muss ich wohl umständlichen Weg gehen und das als String übergeben und dann wieder umwandeln, wäre ja auch eine Möglichkeit das man einfach array davor schreibt, so wie man das jetzt bei string und so auch macht.

  8. #8
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    8,671

    Zu Post 6:
    Steht im Beispiel 4 von der verlinkten Doku!
    Michael
    on Win7VM (ESXi): I5, 24GB RAM, HW-RAID5, 3xSat | HW: CCU + 123 Geräte (506ch), EM1000, CUL, 1Wire, XBee, ELRO 433MHz, FritzBox Cable, Android Phone + Tablet, Samsung C-Serie TV +SamyGo-Ext, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, Rising AV, Piwik, RoundCube, Wordpress, WinLIRC, WHS2011, MediaPortal, XBMC

  9. #9
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,161

    Zitat Zitat von Nall-chan Beitrag anzeigen
    Steht im Beispiel 4 von der verlinkten Doku!
    Ah ok, aber $this kann ich dann nicht nutzten oder geht das doch? Muss also immer mit dem Klassennamen ansprechen?

  10. #10
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    8,671

    Noch, weil es Pflicht wird die Typen anzugeben.
    Kannst auch Array hinschreiben.
    Dann hast du aber die Warnung im Log.
    Kein Eingabefelde in der Konsole bei dieser Funktion (wie sollte das auch funktionieren mit einem Array).
    Und du hast im Script Editor keinen Hinweis auf den Typ.
    Michael
    on Win7VM (ESXi): I5, 24GB RAM, HW-RAID5, 3xSat | HW: CCU + 123 Geräte (506ch), EM1000, CUL, 1Wire, XBee, ELRO 433MHz, FritzBox Cable, Android Phone + Tablet, Samsung C-Serie TV +SamyGo-Ext, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, Rising AV, Piwik, RoundCube, Wordpress, WinLIRC, WHS2011, MediaPortal, XBMC

Ähnliche Themen

  1. Wie greife ich auf eine externe Variable zu?
    Von satmax im Forum Skripte, PHP, SQL
    Antworten: 20
    Letzter Beitrag: 10.09.13, 07:43
  2. Antworten: 1
    Letzter Beitrag: 15.02.13, 15:01
  3. Wie binde Ich eine IP Kamera ein?
    Von docrossi im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 4
    Letzter Beitrag: 03.04.11, 18:26
  4. Antworten: 33
    Letzter Beitrag: 10.12.10, 10:51
  5. Antworten: 5
    Letzter Beitrag: 25.02.10, 16:17