Ankündigung

Einklappen
Keine Ankündigung bisher.

php classe, für mich unerklärlicher fehler

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • php classe, für mich unerklärlicher fehler

    ich habe dieses:

    PHP-Code:
    class classHandle
    {
        function 
    __construct($class,$handle=0)
        {
        
    $this->handle $handle;
        
    $this->className[$handle] = $class;
        
    $this->path[$this->handle] = dirname(__FILE__)."../classes/".$class."/".$class.".php";
        }
        
        function 
    load($handle=0)
        {
            if(
    file_exists($this->path[$handle]))
            {        include_once(
    $this->path[$handle]); $this->tempClass[$handle] = new $this->className; return true;        }
            else
            {        return 
    false;        }

        
        function 
    useIn($function,$handle=0)
        {
        if(!
    $this->tempClass[$handle]) { return false; }
        return 
    $this->tempClass[$handle]->$function."()";
        }
    }
    ?> # <<<<<<<Zeile 234 
    sieht ein wenig konfus aus aber nungut er spuckt mir diese meldung aus:
    Parse error: syntax error, unexpected ';', expecting T_FUNCTION in +++++\core\function.php on line 234
    ich weiss jedoch nicht warum ...., kann mir wer helfen ? (zeile hab ich gekennzeichnet im php code)


    edit: das forum nimmt das weg, im der teile ist ein ?>

  • #2
    Zeile 16. Du hast die function load() nicht geschlossen.

    Kommentar


    • #3
      Sollte
      PHP-Code:
      return $this->tempClass[$handle]->$function."()"
      womöglich
      PHP-Code:
      return $this->tempClass[$handle]->$function(); 
      heißen?

      Kommentar


      • #4
        Ich denke er will da den Namen einer Funktion zurückgegeben haben und nicht eine Funktion aufrufen. Edit: Falsch gedacht ^^

        Symptom für Parse error wegen { und } ist ja, dass der Fehlerpointer meist aufs Ende des Scriptes zeigt. Versuch mal die Klammer zu schliessen und probiers nochmals

        Kommentar


        • #5
          ah wunderbar, ja sollte es, ist auch nochnicht fertig, ich bin selbst nichtmals sicher obs sinn macht, naja mal gucken.

          ich hab noch eine frage, undzwar habe ich eben ewigkeiten im manual gesucht und gegooglet über funktionen in bezug auf classen, z.b. zum prüfen ob es eine classe gibt, welche funktionen darin enthalten sind u.s.w.,
          weiss wer wo ich das im manual finde ?

          Kommentar


          • #6
            http://de.php.net/manual/de/function.class-exists.php
            http://de.php.net/manual/de/function.method-exists.php

            Kommentar


            • #8
              vielen dank ...

              Kommentar


              • #9
                Ich empfehle übrigens die CHM-Version des Manuals zum Download. Ist äusserst bequem

                Kommentar


                • #10
                  Aber bitte die englische benutzen. Die deutsche ist tw. nicht ordentlich übersetzt (falsche Angaben zu Rückgabewerten etc.)

                  Kommentar


                  • #11
                    Wenn du PHP-Klassen oder Objekte ausführlich analysieren möchtest, kannst du Reflections verwenden:
                    http://de.php.net/reflection

                    Was ReflectionClass kann, zeigt ja bereits die Methoden-Übersicht:
                    PHP-Code:
                    <?php
                    class ReflectionClass implements Reflector
                    {
                        final private 
                    __clone()
                        public 
                    object __construct(string name)
                        public 
                    string __toString()
                        public static 
                    string export(mixed class, bool return)
                        public 
                    string getName()
                        public 
                    bool isInternal()
                        public 
                    bool isUserDefined()
                        public 
                    bool isInstantiable()
                        public 
                    bool hasConstant(string name)
                        public 
                    bool hasMethod(string name)
                        public 
                    bool hasProperty(string name)
                        public 
                    string getFileName()
                        public 
                    int getStartLine()
                        public 
                    int getEndLine()
                        public 
                    string getDocComment()
                        public 
                    ReflectionMethod getConstructor()
                        public 
                    ReflectionMethod getMethod(string name)
                        public 
                    ReflectionMethod[] getMethods()
                        public 
                    ReflectionProperty getProperty(string name)
                        public 
                    ReflectionProperty[] getProperties()
                        public array 
                    getConstants()
                        public 
                    mixed getConstant(string name)
                        public 
                    ReflectionClass[] getInterfaces()
                        public 
                    bool isInterface()
                        public 
                    bool isAbstract()
                        public 
                    bool isFinal()
                        public 
                    int getModifiers()
                        public 
                    bool isInstance(stdclass object)
                        public 
                    stdclass newInstance(mixed args)
                        public 
                    stdclass newInstanceArgs(array args)
                        public 
                    ReflectionClass getParentClass()
                        public 
                    bool isSubclassOf(ReflectionClass class)
                        public array 
                    getStaticProperties()
                        public 
                    mixed getStaticPropertyValue(string name [, mixed default])
                        public 
                    void setStaticPropertyValue(string namemixed value)
                        public array 
                    getDefaultProperties()
                        public 
                    bool isIterateable()
                        public 
                    bool implementsInterface(string name)
                        public 
                    ReflectionExtension getExtension()
                        public 
                    string getExtensionName()
                    }
                    ?>

                    Kommentar

                    Lädt...
                    X