php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.05.2008, 10:30  
Neuer Benutzer
 
Registriert seit: 13.05.2008
Beiträge: 5
benni33 befindet sich auf einem aufstrebenden Ast
Standard arrayname auslesen

Hallo Leute. ich habe hier ein kleines problem. und zwar habe ich folgendes objekt aus einer xml geparst:
Code:
config Object
(
    [worlds] => SimpleXMLElement Object
        (
            [de] => Array
                (
                    [0] => 4
                    [1] => 5
                    [2] => 6
                    [3] => 7
                    [4] => 8
                    [5] => 9
                    [6] => 10
                    [7] => 11
                    [8] => 12
                    [9] => 13
                    [10] => 14
                    [11] => 15
                    [12] => 16
                    [13] => 17
                    [14] => 18
                    [15] => 19
                    [16] => 20
                    [17] => 21
                    [18] => 22
                    [19] => 23
                    [20] => 24
                    [21] => 25
                    [22] => 26
                )

            [ch] => Array
                (
                    [0] => >1
                    [1] => >2
                )

        )

    [basedconf] => SimpleXMLElement Object
        (
            [de] => Array
                (
                    [0] => 1
                    [1] => 3
                    [2] => 4
                    [3] => 5
                    [4] => 6
                )

            [ch] => 1
        )
)
Nun muss ich dieses array auslesen und einige daten erhalten. das wollte ich mit foreach machen. klappt soweit ganz gut. allerdings komme ich nicht an das array [de] ran.
Mein Problem ist, ich brauch de als String. daher hatte ich mir zuerst die idee es einfach in Anfürungszeichen zu setzen. doch egal ob mit oder anführungszeichen, jedes mal wenn ich es ausgebe, steht da entweder nur Array oder nix.
ich will aber, dass er mir de ausliest.
das gleich will ich auch mit ch machen.
Wie komme ich da am besten ran?
benni33 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.05.2008, 10:46  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

PHP-Code:
<?php
Class config {} // dummy
$c = new config;
$c->worlds = New SimpleXMLElement('<w><de>4</de><de>5</de><de>6</de><de>7</de><de>8</de>
 <de>9</de><de>10</de><ch>1</ch><ch>2</ch></w>'
);
$c->basedconf = New SimpleXMLElement('<w><de>1</de><de>2</de><de>3</de><de>4</de><de>5</de>
 <ch>1</ch></w>'
);
// print_r($config);
foreach($c->worlds as $n=>$v)
{
  echo 
$n '=' $v " \n";
}
David ist offline  
Alt 13.05.2008, 12:56  
Neuer Benutzer
 
Registriert seit: 13.05.2008
Beiträge: 5
benni33 befindet sich auf einem aufstrebenden Ast
Standard

so hatte ichs am anfang auch. Das hat allerdings nicht geklappt:
hier zum vergleich der Code:

PHP-Code:
class config{

        
//Construct
        
public function __construct(){
              
//Main.xml laden:
              
if(!@$stream=simplexml_load_file("./main.xml")){
                                                                       die(
"Unable to load Main config: config.class.php");
              }
                            
$this->all=$stream;
                            
print_r($this);
      }
}

$config=new config;
foreach(
$config->all->worlds as $n=>$v)
{ echo 
$n.'='.$v."<br>";}
?> 
Und die Ausgabe :
Code:
config Object
(
    [all] => SimpleXMLElement Object
        (
            [worlds] => SimpleXMLElement Object
                (
                    [de] => Array
                        (
                            [0] => 4
                            [1] => 5
                            [2] => 6
                            [3] => 7
                            [4] => 8
                            [5] => 9
                            [6] => 10
                            [7] => 11
                            [8] => 12
                            [9] => 13
                            [10] => 14
                            [11] => 15
                            [12] => 16
                            [13] => 17
                            [14] => 18
                            [15] => 19
                            [16] => 20
                            [17] => 21
                            [18] => 22
                            [19] => 23
                            [20] => 24
                            [21] => 25
                            [22] => 26
                        )

                    [ch] => Array
                        (
                            [0] => 1
                            [1] => 2
                        )

                )

            [basedconf] => SimpleXMLElement Object
                (
                    [de] => Array
                        (
                            [0] => 1
                            [1] => 3
                            [2] => 4
                            [3] => 5
                            [4] => 6
                        )

                    [ch] => 1
                )

            [update] => SimpleXMLElement Object
                (
                    [disable_update] => false
                    [use_compressed_files] => true
                )

            [settings] => SimpleXMLElement Object
                (
                    [spielerakte] => SimpleXMLElement Object
                        (
                            [conquers_per_site] => 20
                        )

                )

        )

)
worlds=
Wie man sieht, er hört irgendwie auf. er macht nix mehr.
Außerdem gibt er das "falsche aus" er soll ja de=1 ... ausgeben und nicht worlds=Array oder was er auch immer ausgeben wollte.
benni33 ist offline  
Alt 13.05.2008, 14:19  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Mein Skript gibt
Code:
de=4 
de=5 
de=6 
de=7 
de=8 
de=9 
de=10 
ch=1 
ch=2
aus.
David ist offline  
Alt 13.05.2008, 17:04  
Neuer Benutzer
 
Registriert seit: 13.05.2008
Beiträge: 5
benni33 befindet sich auf einem aufstrebenden Ast
Standard

sry, ich seh aber keinen wesetnlichen unterschied im quelltext.
benni33 ist offline  
Alt 13.05.2008, 17:06  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

---- EDIT: Mist Erzählt ----
cycap ist offline  
Alt 13.05.2008, 17:42  
Neuer Benutzer
 
Registriert seit: 13.05.2008
Beiträge: 5
benni33 befindet sich auf einem aufstrebenden Ast
Standard

wer?? ihr bringt mcih ganz durcheinander
benni33 ist offline  
Alt 13.05.2008, 17:46  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ich hab grad Mist erzählt weil ich nicht drauf geachtet hab das du im Konstruktor arbeitest... setz in deinem Code doch mal print_r oder noch besser var_dump innerhalb der foreach schleife ein, vielleicht kommst du dem Fehler dann auf die Spur
cycap ist offline  
Alt 13.05.2008, 19:05  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Also ich sehe da einen Unterschied.
Zitat:
Zitat von David
foreach($c->worlds as $n=>$v)
Zitat:
Zitat von benni33 Beitrag anzeigen
foreach($config->all->worlds as $n=>$v)
David ist offline  
Alt 13.05.2008, 20:22  
Neuer Benutzer
 
Registriert seit: 13.05.2008
Beiträge: 5
benni33 befindet sich auf einem aufstrebenden Ast
Standard

öhem
Deine initialisierung:
PHP-Code:
$c->worlds = New SimpleXMLElement('<w><de>4</de><de>5</de><de>6</de><de>7</de><de>8</de> 
 <de>9</de><de>10</de><ch>1</ch><ch>2</ch></w>'
); 
$c->basedconf = New SimpleXMLElement('<w><de>1</de><de>2</de><de>3</de><de>4</de><de>5</de> 
 <ch>1</ch></w>'
); 
Meine initialisierung:
PHP-Code:
if(!@$stream=simplexml_load_file("./main.xml")){
                                                                       die(
"Unable to load Main config: config.class.php");
              }
                            
$this->all=$stream;// WICHTIG!! 
benni33 ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ordner auslesen und während des auslesen sortieren Dooki PHP Tipps 2008 6 14.05.2008 17:50
Vom Browser verschickte Daten auslesen und anzeigen? andy32 PHP Tipps 2008 3 22.08.2007 18:33
[Erledigt] Datenbank auslesen mit register_globals off PHP Tipps 2007 14 03.01.2007 17:12
[Erledigt] gelöst: Tabelle auslesen -&amp;amp;amp;amp;gt; Gleiche Einträge nur 1 Mal Datenbanken 3 31.03.2006 01:44
Textdatei auslesen, aber ohne Komentare HSFighter PHP Tipps 2006 31 23.02.2006 10:07
Cookies auslesen HSFighter PHP Tipps 2007 2 19.11.2005 14:56
[Erledigt] bestimmte ID's auslesen als array PHP Tipps 2007 2 31.10.2005 20:23
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
Daten aus Pw-Geschütztem bereich auslesen PHP-Fortgeschrittene 2 26.08.2005 15:27
[Erledigt] nächste Zeile einer Db auslesen? PHP Tipps 2005-2 7 01.08.2005 00:11
alle Verzeichnisse sortiert auslesen PHP Tipps 2005-2 7 17.07.2005 10:20
auslesen und nochmals auslesen?! $$$ ThiKool $$$ PHP Tipps 2005 23 10.03.2005 19:43
Klassen auslesen PHP Tipps 2007 8 10.01.2005 07:07
[Erledigt] Auslesen von Text incl. &quot; aus Textfeld PHP Tipps 2007 4 04.01.2005 13:30
[Erledigt] Daten von anderer Homepage auslesen PHP Tipps 2004-2 5 02.12.2004 18:49

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php arrayname, arrayname auslesen php, arrayname auslesen, simplexmlelement object auslesen

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:58 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum