Elemente in der mitte eines arrays hinzufügen

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

  • Elemente in der mitte eines arrays hinzufügen

    Hey ich habe ein array, dor tmöcht eich werte hinzufügen
    aber, nicht an den anfang oder das ande, sondern irgendwo in der mitte

    habe mir folgendes überelgt:
    PHP-Code:
    <?php
    $test 
    = array();
    $test[1] = "a1";
    $test[2] = "a2";
    $test[1.5]= "a1 5";

    ksort($testSORT_NUMERIC);
    $new_arr array_values($test);
    echo 
    "<pre>";
    print_r($test);
    echo 
    "new_arr<br>";
    print_r($new_arr);
    echo 
    "</pre>";

    ?>
    die ausgabe:
    Array
    (
    [1] => a1 5
    [2] => a2
    )
    new_arr
    Array
    (
    [0] => a1 5
    [1] => a2
    )



    habt ihr irgendwelche lösungsvorschläge?

    mfg Julius

  • #2
    Re: Elemente in der mitte eines arrays hinzufügen

    Original geschrieben von JuliusCaesar

    habt ihr irgendwelche lösungsvorschläge?
    Ja, Grundlagen lernen! Seitwann ist der Index vom Typ Dezimal?

    Kommentar


    • #3
      seit wann kann er das nicht sein, in einem andren forum was ich über google gefunden habe, kam sowas drin vor

      außerdem war deine Antwort äußerst hilfreich

      Kommentar


      • #4
        Überlege mal scharf ... es gibt Array, die man mit $array[0], $array[2], ... an die Elemente dran kommt, es gibt aber auch welche mit $array['erste id'], $array['zweite id'], ...

        Na, klickt es irgendwo bei dir?

        Kommentar


        • #5
          OffTopic:
          1.5 ... den sollte man sich irgendwo notieren, einfach zu geil ^^

          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
          Wie man Fragen richtig stellt

          Kommentar


          • #6
            naja war ja nur sone idee
            habt ihr sonst noch Vorschläge wie mans anders machen kann?

            Kommentar


            • #7
              Entweder umdrehen oder ein zusätzliches Array für jeden Eintrag (oder Strings als Indizes benutzen )
              Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

              Kommentar


              • #8
                PHP-Code:
                array_merge$vordererTeil, array( $neuerTeil ), $hintererTeil ); 
                Das ist aber super Käse. Da solltest du dir lieber etwas vernünftiges überlegen. Erzähl doch mal, was du vor hast, vielleicht können wir dir Alternativen vorschlagen!

                Kommentar


                • #9
                  ok
                  also ich habe einen string,
                  dort sind alle Planeten eines Sonnensystems aufgeführt
                  unte rjdem plani stehen entsprechdene userdateils
                  diese lese ich mit preg_match_all aus

                  Problem:sobald ein Planet im System unbesiedlet ist, tauchen nur noch bestimmte Infos auf (z.b seine Postion) aber nich mehr der Spielername (weil es ja auch keinen gibt)

                  nehmen wir mal das vsp. punkte
                  PHP-Code:
                  //Punkte
                  $punkte_find "/Punkte\s+(.*)/i";

                  preg_match_all($punkte_find$new_arr[$tm], $punkte); 
                  für eine unbesiedleten Planis teht im string

                  [14:03:01 ] - Unbewohnter Planet
                  Info Schließen
                  für einen besiedelten
                  [14:03:04 ] - Marc 4
                  Besitzer lucky015 Nachricht schicken
                  Punkte 28.767
                  Position 14:03:04
                  Temperatur -9 ° C
                  Allianz Master Allianz
                  Status Feindlich
                  Info Schließen
                  während preg_match 2 mal Koordinaten Daten findet, wird nur 1 mal 1 punkte gefunden

                  die punkte daten werden also den übrigenden Daten nicht korrekt zugeordnet,d.h sie tauchen beim falschen spieler auf

                  Daher habe cih nun erstmal bestimmt welche Planis unbewohnt sind, und die stellen in einem array gespeichert

                  nun hatte ich mir eigentlich vorgestellt, dass er alle gefundene daten durchgeht und ggf. "unbesieder Planet" mittem am array einfügt

                  soweit die Idee....

                  Kommentar


                  • #10
                    Ich weiß gar nicht, was ihr habt, es sortiert doch ganz prächtig!!


                    PHP-Code:
                     <?php
                    $test 
                    = array();
                    $test[1] = "a1";
                    $test[9] = "a2";
                    $test[5] = "a23";
                    $test[2] = "a24";
                    $test['7.5']= "a1 55";
                    $test['5.5']= "a1 56";
                    $test['3.5']= "a1 57";
                    $test['1.5']= "a1 58";

                    echo 
                    "Vorher ";
                    echo 
                    '<pre>$test = ';
                    var_export($test);
                    echo 
                    "</pre>";

                    ksort($testSORT_NUMERIC);


                    echo 
                    "Nachher: ";
                    echo 
                    '<pre>$test = ';
                    var_export($test);
                    echo 
                    "</pre>";

                    ?>
                    Jagut, totaler Typekudelmuddel aber damit muß man bei PHP wohl sowieso leben
                    Zuletzt geändert von combie; 24.01.2008, 01:26.
                    Wir werden alle sterben

                    Kommentar


                    • #11
                      thx, das hat geklappt

                      Kommentar


                      • #12
                        wieder mal ein kläglicher versuch ohne grundlagen ein browserspiel zu proggen? ^^

                        Warum murkst du denn mit so ellen langen strings rum?

                        PHP-Code:
                        class Planet{

                           private 
                        $_owner /* class User */

                           
                        private $_strName;
                           private 
                        $_boolHostile;
                           private 
                        $_decTemperature;

                           
                        //__construct
                           //getters and setters
                           //other functions

                           
                        public __toString(){

                           
                        $str_out  "";
                           
                        $str_out .= (string) $this->getOwner();
                           
                        $str_out .= $this->getTemperature(). "°C";
                           if(
                        $this->isHostile()) $str_out .= "feindlich";
                           else 
                        $str_out "freundlich;
                           return 
                        $str_out;
                           
                           }


                        danach dann noch ne class fürs sonnensystem mit einer findPlanet()
                        usw usw usw
                        Zuletzt geändert von BugBite; 26.01.2008, 14:59.

                        Kommentar


                        • #13
                          PHP-Code:
                          $this.getOwner(); 
                          -> bitte

                          Kommentar


                          • #14
                            wieder mal ein kläglicher versuch ohne grundlagen ein browserspiel zu proggen? ^^

                            Warum murkst du denn mit so ellen langen strings rum?
                            nein kein Browserspiel, dazu brächte ich mehr kenntnisse^^

                            es sit nur ein tool zu einem Browser spiel

                            aber ich muss zugeben ich habe mich (noch) nicht mit klassen und objecten beschäftigt


                            wäre dankbar, wenn mir jemand den letzten teil erläutert
                            diese Funktionen habe ich nicht im manual gefunden...

                            Kommentar


                            • #15
                              @php-desaster

                              lol sry zu viel C# gleich mal nen edit reinpflügen :P

                              @TO:

                              die funktionen sind nicht im manual weil man sie im regelfall selber schreibt

                              dieses getOwner() ist zB dazu da um auf den beitzer des planeten
                              zugreifen zu können ( stichwort datenkapselung )

                              und JAA du solltest dir dringend was zum Thema OOP reinziehen, das
                              würde deine arbeit ungemein vereinfachen :]
                              Zuletzt geändert von BugBite; 26.01.2008, 15:02.

                              Kommentar

                              Lädt...
                              X