2016-10-22 2 views
1

Ich frage mich, ob ich einen beliebigen Schlüssel in meinem Array auswählen und als Wert für einen anderen Schlüssel festlegen kann. um mehr klar zu sein (weil meine Frage nicht klar genug kann), versuche ich, so etwas zu tun:Ist es möglich, einen Wert vom angegebenen Schlüssel im selben Array zu erhalten?

$variable = array(
    'key' => 'value', 
    'key2' => $variable['key'] 
); 

Wie Sie sehen können, wird es nicht funktionieren (es sei denn, ich etwas tun: $variable['key2'] = $variable['key'] aus des Arrays, aber das ist nicht das, was ich suche, und ich werde es nur verwenden, wenn ich nicht in der Lage sein werde, es im selben Array zu tun).

ich für jede Lösung gesucht, aber noch nicht ein ...

Es gibt eine Möglichkeit, so etwas in der gleichen Array zu tun gefunden?

Vielen Dank

+2

Einfache Antwort: Nein, das ist nicht möglich, da '$ variable' noch nicht tut existieren zu dem Zeitpunkt. – arkascha

Antwort

1

So kann man es tun kann leider nicht, weil dieser Schlüssel noch nicht existiert.

Warum zwei gleiche Variablen in demselben Array speichern? Zeigen Sie uns vielleicht, was Sie im größeren Bild versuchen, damit wir Ihnen irgendwie helfen können.

1

Denken Sie daran, wie der Code macht, was in der Klammer FIRST ist. Da $ variable noch nicht gesetzt ist, erhalten Sie einen Fehler auf $ variable ['key'], da $ variable noch kein Array ist.

0

Sie müssen $variable setzen, bevor

Siehe

$variable = new array(); 
    $variable['key'] = $variable->key2 = 'value'; 

Auch

//create array 
$variable = array(
     'key' => 'value' 
    ); 
    //then override 
$variable = array(
     'key2' => $variable['key'], 
     'key' => 'new_value' 
    ); 
Verwandte Themen