Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich mit PHP ein Array basierend auf Bedingungen in zwei neue Arrays aufteilen und das neue Array als englischen Schlüssel speichern? (Im Titel bereits als Beispiel angegeben)

Wie kann ich mit PHP ein Array basierend auf Bedingungen in zwei neue Arrays aufteilen und das neue Array als englischen Schlüssel speichern? (Im Titel bereits als Beispiel angegeben)

WBOY
WBOYOriginal
2016-08-26 10:28:271287Durchsuche

<code>$array = array('0'=>'3','1','2','a'=>'a','b'=>'b','c'=>'c')
</code>

Frage 1:
Teilen Sie die vorherigen Indizes 0, 1, 2 in das $int-Array und teilen Sie die englischen Schlüssel wie a, b, c in das $string-Array auf.
Unterscheiden Sie zwischen 0 und 1 , ich weiß nicht, wie ich mit dem Problem von 2 und englischen Schlüsseln umgehen soll, weil es sich bei ihnen alles um Zeichenfolgentypen handelt (gelöst)

Frage 2:

<code>第一个数组:
array (size=3)
  0 => string '3' (length=1)
  1 => string '1' (length=1)
  2 => string '2' (length=1)
 第二个数组:
array (size=3)
  0 => 
    array (size=1)
      'a' => string 'a' (length=1)
  1 => 
    array (size=1)
      'b' => string 'b' (length=1)
  2 => 
    array (size=1)
      'c' => string 'c' (length=1)</code>

Nach var_dump habe ich array_push für das zweite Array verwendet, aber ich hoffe, dass der Index nicht in Zahlen, sondern direkt auf Englisch ist,
wie folgt:

<code>array (size=3)
  'a' => string '3' (length=1)
  'b' => string '1' (length=1)
  'c' => string '2' (length=1)
</code>

Antwortinhalt:

<code>$array = array('0'=>'3','1','2','a'=>'a','b'=>'b','c'=>'c')
</code>

Frage 1:
Teilen Sie die vorherigen Indizes 0, 1, 2 in das $int-Array und teilen Sie die englischen Schlüssel wie a, b, c in das $string-Array auf.
Unterscheiden Sie zwischen 0 und 1 , ich weiß nicht, wie ich mit dem Problem von 2 und englischen Schlüsseln umgehen soll, weil es sich bei ihnen alles um String-Typen handelt (Gelöst)

Frage 2:

<code>第一个数组:
array (size=3)
  0 => string '3' (length=1)
  1 => string '1' (length=1)
  2 => string '2' (length=1)
 第二个数组:
array (size=3)
  0 => 
    array (size=1)
      'a' => string 'a' (length=1)
  1 => 
    array (size=1)
      'b' => string 'b' (length=1)
  2 => 
    array (size=1)
      'c' => string 'c' (length=1)</code>

Nach var_dump habe ich array_push für das zweite Array verwendet, aber ich hoffe, dass der Index nicht in Zahlen, sondern direkt auf Englisch ist,
wie folgt:

<code>array (size=3)
  'a' => string '3' (length=1)
  'b' => string '1' (length=1)
  'c' => string '2' (length=1)
</code>

is_numeric()

Wie kann ich mit PHP ein Array basierend auf Bedingungen in zwei neue Arrays aufteilen und das neue Array als englischen Schlüssel speichern? (Im Titel bereits als Beispiel angegeben)

<code class="php">$arr1 = $arr2 = [];
$arr = array('0'=>'3','1','2','a'=>'a','b'=>'b','c'=>'c');
foreach ($arr as $key=>$value) {
    if (is_numeric($key)) {
        $arr1[$key] = $value;
    } else {
        $arr2[$key] = $value;
    }
}</code>

<code>$aaa = array(1=>'aa','2'=>'gg','cc'=>'dd');
        foreach ($aaa as $key => $value) {
            if (is_numeric($key)) {
                echo "1".'</br>';
            }elseif (is_string($key)) {
                echo "string";
            }
        }
        die();</code>

Führen Sie den Code-Breaking-Test im obigen Absatz aus. Ob es sich um eine Zahl „ccsdad“ handelt, Sie können also beurteilen, wie zwei neue Arrays kombiniert werden sei in Ordnung

Das ist das Ergebnis

<code>1
1
string</code>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn