Beiträge von mckemo

    Ohne Kenntnis der Struktur im Filesystem und des gesamten Quellcodes, schließlich handelt es sich um eine Klasse in der auf lokale Variablen zugegriffen wird (wie sind die initialisiert, woher kommen die Inhalte ... ?), sowie der ungekürzten Fehlermeldungen ist man auf pures Raten angewiesen. Grundsätzlich kann man aber sagen, dass $xml_name ein Array ist (glob) und somit nicht einfach an $folder_path angehangen werden kann. Falls also nur ein Wert im Array stehen würde, was bei dem Suchmuster *.xml nicht zu erwarten ist, müsste man $xml_name[0] verwenden. Tatsächlich macht man es aber eigentlich genau umgekehrt, also mit glob die Dateien gemäß Maske in das Array einlesen und dann durch das Array loopen.


    Ah, das bringt mich schonmal eine ecke weiter. Danke für den Tipp. wärst du denn bereit dir das ganze mal anzuschauen?

    Hallo leute. Ich bin am verzweifeln!
    Ich habe ein Plugin, dass XML Dateien eingelesen hat. Diese XML Dateien stammen aus einem Makler CRM, welche im OpenImmo Format übertragen werden als Zip datei.

    Vorher sah das ganze dann so aus:

    PHP
    $folder_path    = $this->open_immo_path . $real_estate_id;            $xml_path        = $folder_path . '/' . $real_estate_id . '.xml';            $xml_obj        = simplexml_load_file( $xml_path );

    Nun wurde das CRM aber gewechselt, das zwar auch mit dem gleichen Standard überträgt, allerdings sind die XML Dateien in der ZIP Datei anders benannt.
    Das führt dazu, dass xml_path nicht mehr stimmt, da $real_estate_id eigentlich anders sein müsste.
    Die Dateinamen werden per Timestamp generiert. Heißen also zb: immo--20151006173928.xml.

    Das Problem ist also: Das Plugin erkennt den Namen der XML Datei nicht und lädt sie somit nicht.

    Mein Lösungsversuch war folgender:


    PHP
    foreach ( $folder_names as $real_estate_id):
                $folder_path    = $this->open_immo_path . $real_estate_id;            $xml_name     = glob($folder_path."*.{xml}", GLOB_BRACE);  $xml_path        = $folder_path . '/' . $xml_name;            $xml_obj        = simplexml_load_file( $xml_path );

    Leider bekomme ich dann die Meldung "[COLOR=#444444][FONT=Open Sans] Array to string conversion in ".... was dazu führt, dass $xml_name = Array ist und nicht z.b. die gefundene XML Datei.
    [/FONT][/COLOR]Übrigens ist es immer nur eine XML Datei in dem Ordner. es gibt niemals mehrere.
    Ich bin gerne Bereit für eine funktionierende Lösung auch was zu bezahlen.

    LG mckemo