Klaus: array_insert_id();

Hallo,
ich such eine Möglichkeit, mir den Index des gerade hinzugefügten Array-Elementes zurück geben soll lassen.

Bsp:
<?php
$array = array("hallo","welt");
array_push("test"); //Eine Funktion die jetzt 2 zurückgibt
$array[] = "bla"; //Jetzt eine Funktion die 3 zurückgibt.
?>

MFG

  1. Hmh,

    also mal sehen, die Beschreibung von array_push lautet:
    "Push one or more elements onto the end of array".

    Was sagt dir das über die Position aus? Richtig, am Ende.
    Wie findet man das letzte Element eines Array? Richtig, z.B. Länge-1, demnach würde dich ein count($array) weiterbringen...

    MfG
    Rouven

    --
    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. Hallo,
      das Problem wäre jetzt bei Arrays mit Lücken, so wie es bei mir ist.

      Bsp:
      <?php
      //Bsp 2
      $array = array("0"=>"hallo","2"=>"welt");
      $array[] = "test"; //Index: 3

      echo "<pre>"; print_r($array); echo "</pre> <br><br>";

      echo count($array)-1; //2
      ?>

      Bsp:
      <?php
      //Bsp 2
      $array = array("ein","zwei","drei");
      unset($array[1]); //Eintrag "zwei" löschen
      $array[] = "vier";

      echo "<pre>"; print_r($array); echo "</pre> <br><br>";

      echo count($array)-1; //2
      ?>

      MFG

      1. Hi

        das Problem wäre jetzt bei Arrays mit Lücken, so wie es bei mir ist.

        Dann versuchs so:
        $keys = array_keys($array);
        $key = $keys[count($keys)-1];

        Gruss
        Jonathan

      2. Hallo,

        das Problem wäre jetzt bei Arrays mit Lücken, so wie es bei mir ist.

        wieso? Das letzte Element ist immer das letzte Element. Wenn sich die Anzahl der Elemente ändert, ist das letzte Element immer noch das letzte Element.

        Gruß,
        Severin

        --
        They that can give up essential liberty to obtain a little temporary safty deserve neither liberty nor safty.
        -- Benjamin Franklin
  2. Hallo,

    ich such eine Möglichkeit, mir den Index des gerade hinzugefügten Array-Elementes zurück geben soll lassen.

    1. Man lese die Dokumentation

    2. Man finde: " Returns the new number of elements in the array."

    3. Man schließe daraus:
       $foo = array_push(...);
      $foo -1 == größter Array index

    Gruß,
    Severin

    --
    They that can give up essential liberty to obtain a little temporary safty deserve neither liberty nor safty.
    -- Benjamin Franklin
  3. echo $begrüßung;

    ich such eine Möglichkeit, mir den Index des gerade hinzugefügten Array-Elementes zurück geben soll lassen.

    Da man ja Array-Elemente auch mit einem definierten Schlüssel anfügen kann, versagen alle Elemente-Zähl-Varianten.

    • Füge das Element am Array $array an.
    • Gehe zum Ende des Arrays mittels end($array).
    • Lies den Key mittels key($array).

    (Zu beachten: Wenn der Key bereits vorhanden ist wir kein Element hinzugefügt. Stattdessen wird dann auch der irgendwann zuletzt hinzugefügte Schlüssel ausgegeben.)

    echo "$verabschiedung $name";