如何每次都用键和值创建数组?

it_*_*ure -4 php arrays

我想创建一个数组,如 $animal = array("a" => "horse","b" => "fish").
在数组中一次创建一个元素(键和值)是约束条件,也就是说
在第一次创建键"a"和值"horse"时$animal = array("a" => "horse"),
在第二次创建时关键的"b"和价值"鱼",要做$animal = array("a" => "horse","b" => "fish").

我可以创建array("horse","fish")两次,第一次创建数组array("horse"),
第二次创建数组array("horse","fish").

<?php    
    $animal = array();    
    $x2 = "horse";    
    $x4 = "fish";    
    $animal[] = $x2;    
    $animal[] = $x4;    
    print_r($animal);    
?>    
Run Code Online (Sandbox Code Playgroud)

如何以相同的方式创建数组("a"=>"horse","b"=>"fish")?

<?php    
    $animal = array();    
    $x1 = "a";    
    $x2 = "horse";    
    $x3 = "b";    
    $x4 = "fish";    
    array_keys($animal[]) = $x1;    
    array_values($animal[]) = $x2;    
    array_keys($animal[]) = $x3;    
    array_values($animal[]) = $x4;    
    print_r($animal);
?>
Run Code Online (Sandbox Code Playgroud)

如何修复我的代码来完成这项工作?

小智 5

使用[]将元素推入数组时,可以指定键,如果未指定键,则使用默认值,因此:

<?php    
    $animal = array();    
    $x1 = "a";    
    $x2 = "horse";    
    $x3 = "b";    
    $x4 = "fish";    
    $animal[$x1] = $x2;    
    $animal[$x3] = $x4;  
    print_r($animal);
?>
Run Code Online (Sandbox Code Playgroud)